Boost
C++ Libraries
...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
Until the asynchronous operation has completed, the asynchronous operation shall maintain:
— an object work1 of type executor_work_guard<Executor1>,
initialized as work1(ex1), and where work1.owns_work()
== true; and
— an object work2 of type executor_work_guard<Executor2>,
initialized as work2(ex2), and where work2.owns_work()
== true.