Linux Technical Information
Linux Thread Attributes: An Overview
The Threads Module defines a set of attributes used when a thread is created. These attributes define or control the various thread scheduling and stack allocation behaviors. The purpose of the following sections is to describe the Linux-specific support, behavior, and restrictions for these attributes.
NOTE: Once you begin using thread attributes, you risk compromising the cross-platform portability of your code.
Problems with portability arise largely because scheduling and stack allocation policies tend to vary significantly between each of the environments supported by the Threads Module. Rogue Wave has made every attempt to alleviate or hide these differences without prohibiting access to the platform-specific controls that some developers require. It is up to you to carefully review and understand the implementation differences between each platform that you plan to support.
The Threads Module provides numerous feature-test macros and functions that allow you to determine, at compile time or runtime, which attributes and attribute values are supported by this environment. See the Threads Module User’s Guide for a complete description of these tests.
It is important to note that the member functions used to manipulate attributes are always present, regardless of whether or not the current environment supports those attributes.