49.0 Thread Overview

A thread is a sequence of instructions, that can run independently from and concurrently with other portions of an application. This section assumes that you are familiar with threads. For information on designing an application to use threads, please consult a multithreaded programming book. For a brief list of possible resources, see Section 49.5, Selected Bibliography.

WARNING:For multiple threads of your application to run concurrently, your threads must be preemptible. For more information, see Section 49.3, Preemption.

LibC supports the following thread interfaces:

When deciding which thread interface to use in your application, consider the following points:

For a brief overview that compares the functionality available in these interfaces, see Section 49.4, Overview of the Thread Interfaces.

WARNING:Once you have decided on an thread interface, you should use only that interface. Results are unpredictable if you mix two thread interfaces in the same application.

Regardless of which thead interface you select, you should have some knowledge of the following features when you design your application: