12#ifndef ROOT_TTaskGroup
13#define ROOT_TTaskGroup
19namespace Experimental {
A class to manage the asynchronous execution of work items.
void ExecuteInIsolation(const std::function< void(void)> &operation)
void Run(const std::function< void(void)> &closure)
Add to the group an item of work which will be ran asynchronously.
void Wait()
Wait until all submitted items of work are completed.
void Cancel()
Cancel all submitted tasks immediately.
TTaskGroup(const TTaskGroup &)=delete
TTaskGroup & operator=(TTaskGroup &&other)
std::atomic< bool > fCanRun
void function(const Char_t *name_, T fun, const Char_t *docstring=0)
Namespace for new ROOT classes and functions.