================ @@ -227,7 +265,7 @@ class ThreadPool { class ThreadPoolTaskGroup { ---------------- joker-eph wrote:
> Wouldn't the implemention for ThreadPoolTaskGroup come in hand with the one > for ThreadPool? Right now the only thing the TaskGroup provide is a unique ID in the form of its own address. I don't quite get what I would change in the implementation? Would you want the group to customize its own `wait()`? Right now it dispatches to the threadpool implementation: `wait(ThreadPoolTaskGroup &Group)`. Customizing the task group would require to change the pattern at every use site as well: https://github.com/llvm/llvm-project/blob/0e0bee26e7f33c065eebef9a674b2f19bb156414/mlir/include/mlir/IR/Threading.h#L69-L70 Instead of: ``` llvm::ThreadPool &threadPool = context->getThreadPool(); llvm::ThreadPoolTaskGroup tasksGroup(threadPool); ``` we would need to use the pool as a factory somehow: ``` llvm::ThreadPool &threadPool = context->getThreadPool(); std::unique_ptr<llvm::ThreadPoolTaskGroup> tasksGroup = threadPool.createTaskGroup(); ``` I'm not opposed to this, but that still seems like a separate change, and one that would better be done when there is somehow with the need for this. https://github.com/llvm/llvm-project/pull/82094 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits