allow thread pools to adjust the number of threads to the number of cpu's/cores
Submitted by Olivier Sessink
Link to original bug (#611614)
Description
In the current times of multicore cpu's it would be great if glib could auto-adjust the number of threads to the number of available cpu's/cores on the system.
for example an image viewer could run image loading in threads, where glib would automatically use 4 threads on a quadcore, and two threads on a dualcore system.
This requires:
-
a portable way to determine the number of cpu's/cores
-
an way to set the overall maximum number of threads for all thread-pools (currently this is a per-threadpool setting, so if you have two tasks in your app, you can only set the maximum for each task)
Something like Grand Central Dispatch is obviously more powerful, but I think this feature request is a step in the right direction with little impact on glib.