Lines Matching full:tasks
25 // A note on thread groups: Tasks are by default in no group (represented
26 // by nullptr ThreadPoolTaskGroup pointer in the Tasks queue) and functionality
27 // here normally works on all tasks regardless of their group (functions
29 // A task in a group has a pointer to that ThreadPoolTaskGroup in the Tasks
30 // queue, and functions called to work only on tasks from one group take that
54 // The group of the tasks run by the current thread.
59 // WaitingForGroup == nullptr means all tasks regardless of their group.
67 // Wait for tasks to be pushed in the queue in processTasks()
69 return !EnableFlag || !Tasks.empty() || in processTasks()
75 if (!EnableFlag && Tasks.empty()) in processTasks()
85 Task = std::move(Tasks.front().first); in processTasks()
86 GroupOfTask = Tasks.front().second; in processTasks()
91 Tasks.pop_front(); in processTasks()
128 // If this was a task in a group, notify also threads waiting for tasks in processTasks()
138 return !ActiveThreads && Tasks.empty(); in workCompletedUnlocked()
140 !llvm::any_of(Tasks, in workCompletedUnlocked()
164 // in which case process tasks while waiting to keep the thread busy and avoid in wait()
202 // Sequential implementation running the tasks in wait()
203 while (!Tasks.empty()) { in wait()
204 auto Task = std::move(Tasks.front().first); in wait()
205 Tasks.pop_front(); in wait()