Skip to content

Conversation

@lhames
Copy link
Contributor

@lhames lhames commented Dec 16, 2025

QueueingTaskDispatcher adds Tasks to a the back of a double ended queue that is accessible to clients via the pop_back and pop_front methods. Clients can manually take and run tasks, or call runLIFOUntilEmpty or runFIFOUntilEmpty to run tasks until the queue is empty.

QueueingTaskDispatcher is intended for use in unit tests, and as a foundation for blocking convenience APIs in environments without threads. QueueingTaskDispatcher should generally be avoided, and ThreadPoolTaskDispatcher preferred, where threads are available.

QueueingTaskDispatcher adds Tasks to a the back of a double ended queue that is
accessible to clients via the `pop_back` and `pop_front` methods. Clients can
manually take and run tasks, or call `runLIFOUntilEmpty` or `runFIFOUntilEmpty`
to run tasks until the queue is empty.

QueueingTaskDispatcher is intended for use in unit tests, and as a foundation
for blocking convenience APIs in environments without threads.
QueueingTaskDispatcher should generally be avoided, and ThreadPoolTaskDispatcher
preferred, where threads are available.
@lhames lhames merged commit f2be60c into llvm:main Dec 16, 2025
11 checks passed
@lhames lhames deleted the orc-rt-queueingtaskdispatcher branch December 16, 2025 06:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant