CMPI 2.1.0 API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Variables
OS Encapsulation Services - POSIX-conformant Conditions (Subclause 9.14)

Variables

CMPI_COND_TYPE(* CMPIBrokerExtFT::newCondition )(int opt)
 Create a new POSIX threading-conformant condition variable. More...
 
void(* CMPIBrokerExtFT::destroyCondition )(CMPI_COND_TYPE cond)
 Destroy a POSIX threading-conformant condition variable. (Deprecated) More...
 
int(* CMPIBrokerExtFT::condWait )(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex)
 Wait until a POSIX threading-conformant condition variable is signalled. More...
 
int(* CMPIBrokerExtFT::timedCondWait )(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex, struct timespec *wait)
 Wait until a POSIX threading-conformant condition variable is signaled using a timeout value. More...
 
int(* CMPIBrokerExtFT::signalCondition )(CMPI_COND_TYPE cond)
 Send a signal to a POSIX threading-conformant condition variable. More...
 
int(* CMPIBrokerExtFT::destroyCondition2 )(CMPI_COND_TYPE cond)
 Destroy a POSIX threading-conformant condition variable. More...
 

Detailed Description

Variable Documentation

CMPI_COND_TYPE(* CMPIBrokerExtFT::newCondition)(int opt)

Create a new POSIX threading-conformant condition variable.

CMPIBrokerExtFT.newCondition() creates a new POSIX threading-conformant condition variable.

Parameters
optFor future use. It should be ignored by the MB, and MIs should pass a value of 0.
Returns

If successful, the handle of the new condition variable will be returned.

If not successful, NULL will be returned.

Errors
For historical reasons, no additional error information is passed back.
Convenience Function
None.
Capabilities:
Part of the OS Encapsulation Services capability.
Requirement Change:
Required to be supported since CMPI 2.0.
Change:
In CMPI 2.1, changed opt to be for future use.
void(* CMPIBrokerExtFT::destroyCondition)(CMPI_COND_TYPE cond)

Destroy a POSIX threading-conformant condition variable. (Deprecated)

CMPIBrokerExtFT.destroyCondition() destroys a POSIX threading-conformant condition variable.

Parameters
condHandle of the condition variable to be destroyed.
Returns
None.
Errors
For historical reasons, this function does not indicate whether it succeeded or failed.
Convenience Function
None.
Capabilities:
Part of the OS Encapsulation Services capability.
Requirement Change:
Required to be supported since CMPI 2.0.
Deprecated:
This function is deprecated since CMPI 2.1, because it does not indicate whether it succeeded or failed. Use CMPIBrokerExtFT.destroyCondition2() instead.
int(* CMPIBrokerExtFT::condWait)(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex)

Wait until a POSIX threading-conformant condition variable is signalled.

CMPIBrokerExtFT.condWait() waits until a POSIX threading-conformant condition variable is signaled. If the condition variable has been signaled already, the function returns immediately; otherwise, it suspends the current thread to wait for the signal and then returns.

Parameters
condHandle of the condition variable to be used.
mutexHandle of a locked mutex guarding this condition variable.
Returns

If successful, zero will be returned.

If not successful, a non-zero error code will be returned.

Errors
Error codes are defined in errno.h, specifically for the pthread_cond_wait() function; both are defined in IEEE 1003.1.
Convenience Function
None.
Capabilities:
Part of the OS Encapsulation Services capability.
Requirement Change:
Required to be supported since CMPI 2.0.
int(* CMPIBrokerExtFT::timedCondWait)(CMPI_COND_TYPE cond, CMPI_MUTEX_TYPE mutex, struct timespec *wait)

Wait until a POSIX threading-conformant condition variable is signaled using a timeout value.

CMPIBrokerExtFT.timedCondWait() waits until a POSIX threading-conformant condition variable is signalled. If the condition variable has been signalled already, the function returns immediately; otherwise, it suspends the current thread to wait for the signal and then returns. The function returns when the timeout expires before the condition is signalled.

Parameters
condHandle of the condition variable to be used.
mutexHandle of a locked mutex guarding this condition variable.
waitTimeout value. See structure timespec defined in time.h for details; both are defined in IEEE 1003.1.
Returns

If successful, zero will be returned.

If not successful, a non-zero error code will be returned.

Errors
Error codes are defined in errno.h, specifically for the pthread_cond_timedwait() function; both are defined in IEEE 1003.1.
Convenience Function
None.
Capabilities:
Part of the OS Encapsulation Services capability.
Requirement Change:
Required to be supported since CMPI 2.0.
int(* CMPIBrokerExtFT::signalCondition)(CMPI_COND_TYPE cond)

Send a signal to a POSIX threading-conformant condition variable.

CMPIBrokerExtFT.signalCondition() sends a signal to a POSIX threading-conformant condition variable.

Parameters
condHandle of the target condition variable.
Returns

If successful, zero will be returned.

If not successful, a non-zero error code will be returned.

Errors
Error codes are defined in errno.h, specifically for the pthread_cond_signal() function; both are defined in IEEE 1003.1.
Convenience Function
None.
Capabilities:
Part of the OS Encapsulation Services capability.
Requirement Change:
Required to be supported since CMPI 2.0.
int(* CMPIBrokerExtFT::destroyCondition2)(CMPI_COND_TYPE cond)

Destroy a POSIX threading-conformant condition variable.

CMPIBrokerExtFT.destroyCondition2() destroys a POSIX threading-conformant condition variable.

Parameters
condHandle of the condition variable to be destroyed.
Returns

If successful, zero will be returned.

If not successful, a non-zero error code will be returned.

Errors
Error codes are defined in errno.h, specifically for the pthread_cond_destroy() function; both are defined in IEEE 1003.1.
Convenience Function
None.
Capabilities:
Part of the OS Encapsulation Services capability.
Addition:
Added in CMPI 2.1. Supersedes the deprecated CMPIBrokerExtFT.destroyCondition() function.
Requirement Change:
Required to be supported since CMPI 2.1.