方法
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-
类型:
GCompareDataFuncGCompareDataFunc用于对queue进行排序。 user_data-
类型:
gpointer传递给
func的用户数据。该参数可以为 NULL。数据由方法调用者拥有。