Threads Module User's Guide : PART I Introduction : Chapter 2 Threads Module Overview : Using the Packages Together
Using the Packages Together
Threads Module packages are designed to be built and used individually, but most of them depend on other packages, as shown in Table 2 and Figure 1.
Table 2 – Interpackage dependencies 
To use package...
You must also build package...
Execution Tracing
none
Functor
Thread-compatible Exception, Execution Tracing, Synchronization, Smart Pointer
Interthread Communication
Thread-compatible Exception, Execution Tracing, Synchronization, Smart Pointer, Functor
Smart Pointer
Thread-compatible Exception, Execution Tracing, Synchronization
Synchronization
Thread-compatible Exception, Execution Tracing
Thread-compatible Exception
Execution Tracing
Threading
Thread-compatible Exception, Execution Tracing, Synchronization, Smart Pointer, Functor, Interthread Communication
Figure 1 – Interpackage dependency diagram