graph#
[flow_graph.graph]
Class that serves as a handle to a flow graph of nodes and edges.
// Defined in header <oneapi/tbb/flow_graph.h>
namespace oneapi {
namespace tbb {
namespace flow {
    class graph {
    public:
        graph();
        graph(task_group_context& context);
        ~graph();
        void wait_for_all();
        void reset(reset_flags f = rf_reset_protocol);
        void cancel();
        bool is_cancelled();
        bool exception_thrown();
    };
} // namespace flow
} // namespace tbb
} // namespace oneapi
reset_flags enumeration#
Member functions#
- 
graph(task_group_context &context)#
 Constructs a graph with no nodes. If
contextis specified, the graph tasks are executed in this context. By default, the graph is executed in a bound context of its own.
- 
~graph()#
 Calls
wait_for_all()on the graph, then destroys the graph.
- 
void wait_for_all()#
 Blocks execution until all tasks associated with the graph have completed or cancelled.
- 
void reset(reset_flags f = rf_reset_protocol)#
 Resets the graph according to the specified flags. Flags to
reset()can be combined with bitwise-or.Note
reset()is a thread-unsafe operation, don’t call it concurrently.
- 
void cancel()#
 Cancels all tasks in the graph.
- 
bool is_cancelled()#
 Returns:
trueif the graph was cancelled during the last call towait_for_all();false, otherwise.
- 
bool exception_thrown()#
 Returns:
trueif during the last call towait_for_all()an exception was thrown;false, otherwise.