To avoid deadlocks get rid of the settings G_LOCK. Use the
authorSebastian Wilhelmi <seppi@seppi.de>
Tue, 17 Jan 2006 20:06:27 +0000 (20:06 +0000)
committerSebastian Wilhelmi <wilhelmi@src.gnome.org>
Tue, 17 Jan 2006 20:06:27 +0000 (20:06 +0000)
commitf4484f51bf7a876565697a6d093e5d7accff20f3
treecdd0c35dd2886010d835401dbb9352e26f5a2597
parent47d0894a11c8350dd838146326507d43fc985e2e
To avoid deadlocks get rid of the settings G_LOCK. Use the

2006-01-17  Sebastian Wilhelmi  <seppi@seppi.de>

* glib/gthreadpool.c: To avoid deadlocks get rid of the settings
G_LOCK. Use the unused_thread_queue lock instead. Change
g_thread_pool_thread_proxy such that threads only wait on
non-exlusive pools for at most a 1/2 second. Do not reorder tasks
due to superfluous tasks. Global tasks wait at most for
max-idle-time milliseconds. Make sure, that no task is woken up
twice for the same event via a wakeup_serial. This fixes #324228.

* tests/threadpool-test.c: Adapt test accordingly. Do not pass
invalid NULL into the thread pools. This as well fixes #327290.
ChangeLog
ChangeLog.pre-2-10
ChangeLog.pre-2-12
glib/gthreadpool.c
tests/threadpool-test.c