1,364 Posts served
5,674 Conversations started
After a good deal of theoretizing about various cancellation scenarios, we’ve finally reached the point where we can touch a bit more material substance (if one can say so about information☺). So let’s see how to use group contexts in practice. You can create an instance of task group context using any technique applicable to C++ [...]
Now that we’ve familiarized ourselves with the simple scenarios in the previous part of this post, let’s consider more complex, but nevertheless ubiquitous use case of nested parallelism (maybe it is even more widespread that non-nested usages). When we considered a standalone algorithm, canceling any of its tasks naturally caused unconditional cancellation of all its other [...]
After the long-winded introduction let’s consider the semantics of task cancellation and exception handling in TBB. The basic usage model of cancellation was shaped in order to cover the following primary use cases: Cancelling an algorithm when one of its tasks decides that the purpose of the algorithm has been [...]
The last stable TBB drop (tbb20_20080408oss) featured the first version of the exception handling and cancellation support in the library, and the upcoming 2.1 release will have a bit more mature variant of it. While the documentation is not yet available, in this blog I would like to outline the main usage models for this [...]