-
Notifications
You must be signed in to change notification settings - Fork 61
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix stack overflow bug in the task system (#1583)
* Turn each task queue in the task system into a finite set of queues of increasing priority. The number of queues is a compile-time constant, currently two. * When a task of priority higher than that of the highest priority queue is scheduled, execute it synchronously. * When scheduling tasks in a task group, use a priority one higher than that of the calling task; when waiting on the task group, work only on tasks with this priority or higher. This is sufficient to avoid the deep recursion issue seen in issue #1570. Fixes #1570. Co-authored-by: Sam Yates <[email protected]>
- Loading branch information
1 parent
250cce4
commit 8afe259
Showing
4 changed files
with
609 additions
and
174 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.