Types const_range_type and range_type model the Container Range concept. The types differ only in that the bounds for a const_range_type are of type const_iterator, whereas the bounds for a range_type are of type iterator.
A template class that is a graph_node, continue_receiver and a sender<T>. It executes a specified body object when triggered and broadcasts the generated value to all of its successors.
A template function that removes an edge between a sender<T> and a receiver<T>.
The allocator concept for allocators in Intel® Threading Building Blocks is similar to the "Allocator requirements" in Table 32 of the ISO C++ Standard, but with further guarantees required by the ISO C++ Standard for use with ISO C++ containers. The table below summarizes the allocator concept. Here, A and B represent instances of the allocator class.
Spawning a task t either causes the calling thread to invoke t.execute(), or causes t to be put into the ready pool. Any thread participating in task scheduling may then acquire the task and invoke t.execute(). Section Scheduling Algorithm describes the structure of the ready pool.
The calls that spawn come in two forms:
Subclass of tbb_exception interface that supports propagating copy-constructible data.
Intel® Threading Building Blocks (Intel® TBB) 3.0 introduces a header tbb/compat/thread that defines class std::thread. Prior versions had a header tbb/tbb_thread.h that defined class tbb_thread. The old header and names are still available, but deprecated in favor of the replacements shown in Table 48.
A subset of the parallel algorithms is provided for modeling serial execution. Currently only a serial version of tbb::parallel_for() is available.