-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
enhancementNew feature or requestNew feature or requestoptimizationThis can be made more efficientThis can be made more efficient
Description
We currently (since #97) have a generic multiple-producer multiple-consumer lockfree Channel, using cameron314/concurrentqueue (moodycamel). However, for certain tasks, we'd like to have slightly different queue implementations backing a Channel; e.g., a work-stealing-based Channel for the workers' work queues. Instead of patching in the necessary synchronization with atomics and locks on top of the existing Channel, we should have an interface IChannel with multiple implementations: LockFreeChannel, WorkStealingChannel, etc. The implementations should internally do whatever bookkeeping/synchronization they need to maintain thread-safety.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestoptimizationThis can be made more efficientThis can be made more efficient