方法
GLibAsyncQueuesort
自:2.10
声明 [源代码位置]
void
g_async_queue_sort (
GAsyncQueue* queue,
GCompareDataFunc func,
gpointer user_data
)
描述 [源代码位置]
使用 func
对 queue
进行排序。
排序函数 func
接收 queue
的两个元素。如果它们相等,则返回 0;如果第一个元素应位于 queue
的较高位置,则返回负值;如果第一个元素应位于第二个元素下方,则返回正值。
此函数将在对队列进行排序之前锁定 queue
,并在完成后解锁。
如果您正在对优先级数字列表进行排序以确保最低优先级位于队列顶部,可以使用
gint32 id1;
gint32 id2;
id1 = GPOINTER_TO_INT (element1);
id2 = GPOINTER_TO_INT (element2);
return (id1 > id2 ? +1 : id1 == id2 ? 0 : -1);
自:2.10
参数
func
-
类型:
GCompareDataFunc
GCompareDataFunc
用于对queue
进行排序。 user_data
-
类型:
gpointer
传递给
func
的用户数据。该参数可以为 NULL
。数据由方法调用者拥有。