With the primitive thread and interrupt classes and functions behind us, we can now look at more sophisticated thread programming tools within uCR. These tools in fact need not be part of uCR as the previous primitives are quite sufficient to implement any of them. However, they are of such common value that they are included in the uCR library.