aboutsummaryrefslogtreecommitdiff
path: root/libbuild2/scheduler.hxx
AgeCommit message (Collapse)AuthorFilesLines
2021-05-13Rearrange inline function definitions to make MinGW GCC happyBoris Kolpackov1-4/+3
2021-05-13Do lazy allocation of shadow task queuesBoris Kolpackov1-0/+3
2021-05-12Deal with helper thread starvation during phase switchingBoris Kolpackov1-15/+66
The implemented solution entails shadowing old phase queues so that helpers don't pick up old phase tasks and boosting the max_threads count so that we can create more helpers if all the existing ones are stuck in the old phase.
2021-05-12Keep phase locked while working own queueBoris Kolpackov1-0/+14
2021-01-13Make sure we don't work any existing tasks when building in module contextBoris Kolpackov1-4/+24
2020-08-07Add ability to allocate additional active threads to current threadBoris Kolpackov1-1/+70
2020-02-07Drop copyright notice from source codeKaren Arutyunov1-1/+0
2019-10-25Fix maybe used uninitialized warningBoris Kolpackov1-1/+1
2019-10-23Un-tune scheduler when building build system modulesBoris Kolpackov1-8/+39
2019-08-07Tighten deadlock monitor notification logicBoris Kolpackov1-1/+1
2019-08-07Make deadlock detection loop more robustBoris Kolpackov1-0/+7
2019-08-07Distinguish between internal/external wait deactivation in schedulerBoris Kolpackov1-7/+16
This turns out to be necessary for the deadlock detection to work properly.
2019-08-06Implement general deadlock detection via monitoring threadBoris Kolpackov1-1/+12
2019-07-01Split build system into library and driverBoris Kolpackov1-0/+709