mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-03-03 06:32:10 +01:00
GTask: Avoid resorting
When a task is cancelled, we want to move it to the front of the queue - our sort function does that for us, but there is no need to resort the entire queue here, we can just move the one item and be done with it. This uses just-introduced threadpool api for this purpose. https://bugzilla.gnome.org/show_bug.cgi?id=751160
This commit is contained in:
parent
9486f697bb
commit
e419e1c4e2
@ -1296,7 +1296,10 @@ task_thread_cancelled (GCancellable *cancellable,
|
||||
{
|
||||
GTask *task = user_data;
|
||||
|
||||
g_task_thread_pool_resort ();
|
||||
/* Move this task to the front of the queue - no need for
|
||||
* a complete resorting of the queue.
|
||||
*/
|
||||
g_thread_pool_move_to_front (task_pool, task);
|
||||
|
||||
g_mutex_lock (&task->lock);
|
||||
task->thread_cancelled = TRUE;
|
||||
|
Loading…
x
Reference in New Issue
Block a user