SourcePro C++ 12.0 |
SourcePro® C++ API Reference Guide |
SourcePro C++ Documentation Home |
Encapsulates a set of attributes that define or control thread scheduling and stack allocation. More...
#include <rw/thread/RWThreadAttribute.h>
Class RWThreadAttribute encapsulates a set of attributes that define or control thread scheduling and stack allocation. By supplying an instance of this class to a thread object such as an RWThread, you can configure the behavior of each new thread that you create. You can also use an RWThreadAttribute to retrieve the default values for the current environment and query the current environment as to which attributes may be legally retrieved and set under the current circumstances.
This class also provides functions that query the minimum and maximum allowable values for the various attributes. Please see the Threads Module User's Guide and the Threads Module Platform User's Guide for a complete discussion of thread attributes.
The bulk of the public member functions for this class are divided into six groups:
"canGetXxx"
functions determine whether an attribute value can be read."canSetXxx"
functions determine whether an attribute value can be set."getXxx"
functions return an attribute value."isXxxSet"
functions determine whether an attribute has maintained its previously set value."resetXxx"
functions restore an attribute to its default setting."setXxx"
functions set an attribute value.The following macros, defined in rw/thread/RWThreadAttribute.h
, indicate whether the corresponding attribute is supported in the current environment. If the macro is not defined, attempts to get or set the corresponding attribute produce exceptions. If the macro is defined, the current environment has some level of support for the attribute, and may allow you to get or set the attribute value.
RW_THR_HAS_CONTENTION_SCOPE
RW_THR_HAS_INHERITANCE_POLICY
RW_THR_HAS_PRIORITY
RW_THR_HAS_PROCESS_SCOPE_PRIORITY
RW_THR_HAS_SCHEDULING_POLICY
RW_THR_HAS_STACK_COMMIT_SIZE
RW_THR_HAS_STACK_RESERVE_SIZE
RW_THR_HAS_START_POLICY
RW_THR_HAS_SYSTEM_SCOPE_PRIORITY
RW_THR_HAS_TIME_SLICE_QUANTUM
RW_THR_HAS_USER_STACK
RW_THR_HAS_DUAL_PRIORITY
This macro indicates when the underlying system requires two priorities for threads with system contention scope: one priority value for resolving system-level scheduling conflicts, and a second priority value for resolving contention for synchronization resources that are shared between threads in a process.
RW_THR_HAS_PARTIAL_STACK_COMMITMENT
This macro indicates that the underlying system allows partial stack commitment, meaning the stack commit size may be set to a value less than the stack reserve size. If this macro is not defined, then the stack reserve size and stack commit size attributes are mutually exclusive and only one or the other may be set.
#include <rw/thread/RWThreadAttribute.h> // for RWThreadAttribute #include <rw/thread/RWRunnableSelf.h> // for rwThread() #include <rw/thread/rwtMakeThreadFunction.h> // for rwtMakeThreadFunction() void checkContentionScope(void) { RWThreadSelf me = rwThread(); // Was this thread created by a Threading package class? if (me.isValid()) { // Get the attribute instance used to create the thread RWThreadAttribute attr = me.getActiveAttribute(); // Is the contention scope attribute available? if (attr.canGetContentionScope()) { // Yes, then get the scope used to create the thread RWContentionScope cscope = attr.getContentionScope(); switch (cscope) { case RW_THR_PROCESS_SCOPE: cout << "Process Scope" << endl; break; case RW_THR_SYSTEM_SCOPE: cout << "System Scope" << endl; break; default: cout << "Unexpected value for contention scope" << endl; } } else cout << "Contention scope is not supported" << endl; } } int main() { RWThread t1 = rwtMakeThreadFunction(checkContentionScope); cout << "Default: " << flush; t1.start(); t1.join(); RWThreadAttribute attr; // Is the desired contention scope policy supported? if (attr.canSetContentionScope(RW_THR_SYSTEM_SCOPE)) attr.setContentionScope(RW_THR_SYSTEM_SCOPE); else cout << "Unable to set contention scope to \"System\"" << endl; t1.setAttribute(attr); cout << "Set: " << flush; t1.start(); t1.join(); attr.resetContentionScope(); t1.setAttribute(attr); cout << "Reset: " << flush; t1.start(); t1.join(); return 0; } Program output (Solaris): Default: Process Scope Set: System Scope Reset: Process Scope
RWThreadAttribute::RWThreadAttribute | ( | ) |
Default constructor.
RWThreadAttribute::RWThreadAttribute | ( | RWStaticCtor | ) | [inline] |
Constructs a global static instance that is initialized upon first use. If the object is used before this constructor is called, any set values are not overridden.
RWThreadAttribute::RWThreadAttribute | ( | const RWThreadAttribute & | second | ) | [inline] |
Copy constructor.
RWThreadAttribute::~RWThreadAttribute | ( | ) | [inline] |
Destructor.
RWThreadAttributeImp& RWThreadAttribute::body | ( | void | ) | const [protected] |
Gets a reference for the body instance, if any.
RWTHRInvalidPointer | Thrown if this handle is not attached to a body. |
Reimplemented from RWHandleBase.
bool RWThreadAttribute::canGetConcurrencyPolicy | ( | ) | const |
Determines at runtime whether the value of the concurrency attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getConcurrencyPolicy() cannot return a legal value under current circumstances.
Returns true
if the value of the concurrency attribute has not yet been set using the function setConcurrencyPolicy(), indicating that a default value is available and may be read.
Always returns true
if the concurrency attribute retains the value defined by a previous call to setConcurrencyPolicy(). In this case, the behavior is similar to that provided by the function isConcurrencyPolicySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetContentionScope | ( | ) | const |
Determines at runtime whether the value of contention scope attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getContentionScope() cannot return a legal value under current circumstances.
Returns true
if the value of the contention scope attribute has not yet been set using the function setContentionScope(), indicating that a default value is available and may be read.
Always returns true
if contention scope attribute retains the value defined by a previous call to setContentionScope(). In this case, the behavior is similar to that provided by the function isContentionScopeSet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetInheritancePolicy | ( | ) | const |
Determines at runtime whether the value of the inheritance attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getInheritancePolicy() cannot return a legal value under current circumstances.
Returns true
if the value of the inheritance attribute has not yet been set using the function setInheritancePolicy(), indicating that a default value is available and may be read.
Always returns true
if the inheritance attribute retains the value defined by a previous call to setInheritancePolicy(). In this case, the behavior is similar to that provided by the function isInheritancePolicySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetPriority | ( | ) | const |
Determines at runtime whether the value of the priority attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getPriority() cannot return a legal value under current circumstances.
Returns true
if the value of the priority attribute has not yet been set using the function setPriority(), indicating that a default value is available and may be read.
Always returns true
if the priority attribute retains the value defined by a previous call to setPriority(). In this case, the behavior is similar to that provided by the function isPrioritySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetProcessScopePriority | ( | ) | const |
Determines at runtime whether the value of process scope attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getProcessScopePriority() cannot return a legal value under current circumstances.
Returns true
if the value of the process scope attribute has not yet been set using the function setProcessScopePriority(), indicating that a default value is available and may be read.
Always returns true
if the process scope attribute retains the value defined by a previous call to setProcessScopePriority(). In this case, the behavior is similar to that provided by the function isProcessScopePrioritySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetSchedulingPolicy | ( | ) | const |
Determines at runtime whether the value of the scheduling attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getSchedulingPolicy() cannot return a legal value under current circumstances.
Returns true
if the value of the scheduling attribute has not yet been set using the function setSchedulingPolicy(), indicating that a default value is available and may be read.
Always returns true
if the scheduling attribute retains the value defined by a previous call to setSchedulingPolicy(). In this case, the behavior is similar to that provided by the function isSchedulingPolicySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetStackCommitSize | ( | ) | const |
Determines at runtime whether the value of the stack commit size attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getStackCommitSize() cannot return a legal value under current circumstances.
Returns true
if the value of the stack commit size attribute has not yet been set using the function setStackCommitSize(), indicating that a default value is available and may be read.
Always returns true
if the stack commit size attribute retains the value defined by a previous call to setStackCommitSize(). In this case, the behavior is similar to that provided by the function isStackCommitSizeSet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetStackGuardSize | ( | ) | const |
Determines at runtime whether the value of the stack guard size attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getStackGuardSize() cannot return a legal value under current circumstances.
Returns true
if the value of the stack guard size attribute has not yet been set using the function setStackGuardSize(), indicating that a default value is available and may be read.
Always returns true
if the stack guard size attribute retains the value defined by a previous call to setStackGuardSize(). In this case, the behavior is similar to that provided by the function isStackGuardSizeSet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetStackReserveSize | ( | ) | const |
Determines at runtime whether the value of the stack reserve size attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getStackReserveSize() cannot return a legal value under current circumstances.
Returns true
if the value of the stack reserve size attribute has not yet been set using the function setStackReserveSize(), indicating that a default value is available and may be read.
Always returns true
if stack reserve size attribute retains the value defined by a previous call to the function setStackReserveSize(). In this case, the behavior is similar to that provided by the function isStackReserveSizeSet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetStartPolicy | ( | ) | const |
Determines at runtime whether the value of the start attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getStartPolicy() cannot return a legal value under current circumstances.
Returns true
if the value of the start attribute has not yet been set using the function setStartPolicy(), indicating that a default value is available and may be read.
Always returns true
if the start attribute retains the value defined by a previous call to setStartPolicy(). In this case, the behavior is similar to that provided by the function isStartPolicySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetSystemScopePriority | ( | ) | const |
Determines at runtime whether the value of the system scope priority attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getSystemScopePriority() cannot return a legal value under current circumstances.
Returns true
if the value of the system scope priority attribute has not yet been set using the function setSystemScopePriority(), indicating that a default value is available and may be read.
Always returns true
if the system scope priority attribute retains the value defined by a previous call to the function setSystemScopePriority(). In this case, the behavior is similar to that provided by the function isSystemScopePrioritySet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetTimeSliceQuantum | ( | ) | const |
Determines at runtime whether the value of the time slice quantum attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getTimeSliceQuantum() cannot return a legal value under current circumstances.
Returns true
if the value of the time slice quantum attribute has not yet been set using the function setTimeSliceQuantum(), indicating that a default value is available and may be read.
Always returns true
if the time slice quantum attribute retains the value defined by a previous call to setTimeSliceQuantum(). In this case, the behavior is similar to that provided by the function isTimeSliceQuantumSet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canGetUserStack | ( | ) | const |
Determines at runtime whether the value of the user stack attribute may be read. Returns false
if the attribute is not supported in the current environment, or if the function getUserStackSize() cannot return a legal value under current circumstances.
Returns true
if the value of the user stack attribute has not yet been set using the function setUserStack(), indicating that a default value is available and may be read.
Always returns true
if the user stack attribute retains the value defined by a previous call to setUserStack(). In this case, the behavior is similar to that provided by the function isUserStackSet().
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::canSetConcurrencyPolicy | ( | RWConcurrencyPolicy | policy | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.
All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetContentionScope | ( | RWContentionScope | scope | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetInheritancePolicy | ( | RWInheritancePolicy | policy | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetPriority | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetProcessScopePriority | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetSchedulingPolicy | ( | RWSchedulingPolicy | policy | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetStackCommitSize | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetStackGuardSize | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetStackReserveSize | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetStartPolicy | ( | RWStartPolicy | policy | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetSystemScopePriority | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetTimeSliceQuantum | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
bool RWThreadAttribute::canSetUserStack | ( | ) | const |
The "canSetXxx()"
functions determine, at runtime, whether the corresponding attribute value may be set. Each of these functions returns false
if the corresponding attribute is not supported in the current environment or if the specified policy, if any, is not supported under the current circumstances. Otherwise, the function returns true
.All of these functions can throw an RWTHRInternalError exception. In addition, those that take an argument can throw RWTHRBoundsError.
void RWThreadAttribute::copy | ( | const RWThreadAttribute & | second | ) |
Copies the thread attribute values from second.
RWConcurrencyPolicy RWThreadAttribute::getConcurrencyPolicy | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.
These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWContentionScope RWThreadAttribute::getContentionScope | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWInheritancePolicy RWThreadAttribute::getInheritancePolicy | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWPriority RWThreadAttribute::getMaxPriority | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.
All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
RWPriority RWThreadAttribute::getMaxProcessScopePriority | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
RWPriority RWThreadAttribute::getMaxSystemScopePriority | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
unsigned long RWThreadAttribute::getMaxTimeSliceQuantum | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
RWPriority RWThreadAttribute::getMinPriority | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
RWPriority RWThreadAttribute::getMinProcessScopePriority | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
static size_t RWThreadAttribute::getMinStackSize | ( | ) | [static] |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
RWPriority RWThreadAttribute::getMinSystemScopePriority | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
unsigned long RWThreadAttribute::getMinTimeSliceQuantum | ( | ) | const |
Use the "getXxx"
() functions to determine the legal range of values for various attributes.All can throw exceptions RWTHROperationNotSupported and RWTHRInternalError. In addition, all of these functions except getMinStackSize() can throw an RWTHROperationNotAvailable exception.
RWPriority RWThreadAttribute::getPriority | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWPriority RWThreadAttribute::getProcessScopePriority | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWSchedulingPolicy RWThreadAttribute::getSchedulingPolicy | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
size_t RWThreadAttribute::getStackCommitSize | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
size_t RWThreadAttribute::getStackGuardSize | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
size_t RWThreadAttribute::getStackReserveSize | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWStartPolicy RWThreadAttribute::getStartPolicy | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
RWPriority RWThreadAttribute::getSystemScopePriority | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
unsigned long RWThreadAttribute::getTimeSliceQuantum | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
void* RWThreadAttribute::getUserStackAddress | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
size_t RWThreadAttribute::getUserStackSize | ( | ) | const |
Use the "getXxx()"
functions to query the default value of an attribute, if available, or the last value defined in a call to the matching "setXxx()"
function.These functions throw an RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw an RWTHROperationNotAvailable exception if the corresponding attribute is supported but has not yet been defined by a call to the matching "setXxx()"
function, and no default value is available under the current circumstances. Other possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isConcurrencyPolicySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.
Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isContentionScopeSet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isEqual | ( | const RWThreadAttribute & | second | ) | const |
Tests the equality of self against second on a value by value basis.
Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isInheritancePolicySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isPrioritySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isProcessScopePrioritySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isSchedulingPolicySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isStackCommitSizeSet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isStackGuardSizeSet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isStackReserveSizeSet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isStartPolicySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isSystemScopePrioritySet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isTimeSliceQuantumSet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
bool RWThreadAttribute::isUserStackSet | ( | ) | const |
The "isXxxSet()"
functions determine whether the corresponding attribute still has the value specified in an earlier call to the matching "setXxx()"
function.Each of these functions returns false
if the corresponding attribute is not supported in the current environment, has not yet been set, or has been forced to another default value in response to a change in a related attribute. Otherwise, returns true
.Possible exceptions include RWTHRInternalError.
RWThreadAttribute & RWThreadAttribute::operator= | ( | const RWThreadAttribute & | second | ) | [inline] |
Assignment operator.
void RWThreadAttribute::resetConcurrencyPolicy | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.
Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetContentionScope | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetInheritancePolicy | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetPriority | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetProcessScopePriority | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetSchedulingPolicy | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetStackCommitSize | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetStackGuardSize | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetStackReserveSize | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetStartPolicy | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetSystemScopePriority | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetTimeSliceQuantum | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::resetUserStack | ( | ) |
The "resetXxx()"
functions restore an attribute value to its default setting, if any. These functions always succeed, even if the target attribute is not supported in the current environment. Several combinations of attributes and environments exist in which it is not possible to query for a default value of an attribute. In these cases, the functions simply clear any previous setting so that the Threads Module relies instead on the underlying API to determine the appropriate default value.Possible exceptions include RWTHRInternalError and RWTHROperationNotSupported.
void RWThreadAttribute::setConcurrencyPolicy | ( | RWConcurrencyPolicy | policy | ) |
Use the "setXxx()"
functions to set the corresponding attribute.
These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setContentionScope | ( | RWContentionScope | scope | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setInheritancePolicy | ( | RWInheritancePolicy | policy | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setPriority | ( | RWPriority | priority | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setProcessScopePriority | ( | RWPriority | priority | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setSchedulingPolicy | ( | RWSchedulingPolicy | policy | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setStackCommitSize | ( | size_t | size | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setStackGuardSize | ( | size_t | size | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setStackReserveSize | ( | size_t | size | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setStartPolicy | ( | RWStartPolicy | policy | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setSystemScopePriority | ( | RWPriority | priority | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setTimeSliceQuantum | ( | unsigned long | milliseconds | ) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
void RWThreadAttribute::setUserStack | ( | void * | address, | |
size_t | size | |||
) |
Use the "setXxx()"
functions to set the corresponding attribute.These functions throw the RWTHROperationNotSupported exception if the attribute is not supported in the current environment. They throw the RWTHROperationNotAvaiable exception if the corresponding attribute is supported, but the specified value is not supported under the current circumstances. Other possible exceptions include RWTHRBoundsError, RWTHROperationNotAvailable, RWTHROperationNotSupported, and RWTHRInternalError.
typedef int RWPriority [related] |
The internal thread priority representation.
typedef pri_t RWPriority [related] |
The internal thread priority representation.
typedef int RWPriority [related] |
The internal thread priority representation.
© Copyright Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.