Generated from ./inc/complib/cl_atomic.h with ROBODoc v4.99.17 on Sun Mar 04 2007 18:17:52

[Modules] Component Library/Atomic Operations

[top][parent][index]

NAME

       Atomic Operations

DESCRIPTION

       The Atomic Operations functions allow callers to operate on
       32-bit signed integers in an atomic fashion.

[Functions] Component Library: Atomic Operations/cl_atomic_add

[top][index]

NAME

       cl_atomic_add

DESCRIPTION

       The cl_atomic_add function atomically adds a value to a
       32-bit signed integer and returns the resulting value.

SYNOPSIS

CL_EXPORT int32_t CL_API
cl_atomic_add(
        IN      atomic32_t* const       p_value,
        IN      const int32_t           increment );

PARAMETERS

       p_value
               [in] Pointer to a 32-bit integer that will be added to.

       increment
               [in] Value by which to increment the integer pointed to by p_value.

RETURN VALUE

       Returns the value pointed to by p_value after the addition.

NOTES

       The provided increment is added to the value and the result returned in
       one atomic operation.

       cl_atomic_add maintains data consistency without requiring additional
       synchronization mechanisms in multi-threaded environments.

SEE ALSO

       Atomic Operations, cl_atomic_inc, cl_atomic_dec, cl_atomic_sub,
       cl_atomic_xchg, cl_atomic_comp_xchg

[Functions] Component Library: Atomic Operations/cl_atomic_comp_xchg

[top][index]

NAME

       cl_atomic_comp_xchg

DESCRIPTION

       The cl_atomic_comp_xchg function atomically compares a 32-bit signed
       integer to a desired value, sets that integer to the
       specified value if equal, and returns the initial value.

SYNOPSIS

CL_EXPORT int32_t CL_API
cl_atomic_comp_xchg(
        IN      atomic32_t* const       p_value,
        IN      const int32_t           compare,
        IN      const int32_t           new_value );

PARAMETERS

       p_value
               [in] Pointer to a 32-bit integer to exchange with new_value.

       compare
               [in] Value to compare to the value pointed to by p_value.

       new_value
               [in] Value to assign if the value pointed to by p_value is equal to
               the value specified by the compare parameter.

RETURN VALUE

       Returns the initial value of the variable pointed to by p_value.

NOTES

       The value pointed to by p_value is compared to the value specified by the
       compare parameter.  If the two values are equal, the p_value variable is
       set to new_value.  The initial value pointed to by p_value is returned.

       cl_atomic_comp_xchg maintains data consistency without requiring additional
       synchronization mechanisms in multi-threaded environments.

SEE ALSO

       Atomic Operations, cl_atomic_inc, cl_atomic_dec, cl_atomic_add,
       cl_atomic_sub, cl_atomic_xchg

[Functions] Component Library: Atomic Operations/cl_atomic_dec

[top][index]

NAME

       cl_atomic_dec

DESCRIPTION

       The cl_atomic_dec function atomically decrements a 32-bit signed
       integer and returns the decremented value.

SYNOPSIS

CL_EXPORT int32_t CL_API
cl_atomic_dec(
        IN      atomic32_t* const       p_value );

PARAMETERS

       p_value
               [in] Pointer to a 32-bit integer to decrement.

RETURN VALUE

       Returns the decremented value pointed to by p_value.

NOTES

       The provided value is decremented and its value returned in one atomic
       operation.

       cl_atomic_dec maintains data consistency without requiring additional
       synchronization mechanisms in multi-threaded environments.

SEE ALSO

       Atomic Operations, cl_atomic_inc, cl_atomic_add, cl_atomic_sub,
       cl_atomic_xchg, cl_atomic_comp_xchg

[Functions] Component Library: Atomic Operations/cl_atomic_inc

[top][index]

NAME

       cl_atomic_inc

DESCRIPTION

       The cl_atomic_inc function atomically increments a 32-bit signed
       integer and returns the incremented value.

SYNOPSIS

CL_EXPORT int32_t CL_API
cl_atomic_inc(
        IN      atomic32_t* const       p_value );

PARAMETERS

       p_value
               [in] Pointer to a 32-bit integer to increment.

RETURN VALUE

       Returns the incremented value pointed to by p_value.

NOTES

       The provided value is incremented and its value returned in one atomic
       operation.

       cl_atomic_inc maintains data consistency without requiring additional
       synchronization mechanisms in multi-threaded environments.

SEE ALSO

       Atomic Operations, cl_atomic_dec, cl_atomic_add, cl_atomic_sub,
       cl_atomic_xchg, cl_atomic_comp_xchg

[Functions] Component Library: Atomic Operations/cl_atomic_sub

[top][index]

NAME

       cl_atomic_sub

DESCRIPTION

       The cl_atomic_sub function atomically subtracts a value from a
       32-bit signed integer and returns the resulting value.

SYNOPSIS

CL_EXPORT int32_t CL_API
cl_atomic_sub(
        IN      atomic32_t* const       p_value,
        IN      const int32_t           decrement );

PARAMETERS

       p_value
               [in] Pointer to a 32-bit integer that will be subtracted from.

       decrement
               [in] Value by which to decrement the integer pointed to by p_value.

RETURN VALUE

       Returns the value pointed to by p_value after the subtraction.

NOTES

       The provided decrement is subtracted from the value and the result
       returned in one atomic operation.

       cl_atomic_sub maintains data consistency without requiring additional
       synchronization mechanisms in multi-threaded environments.

SEE ALSO

       Atomic Operations, cl_atomic_inc, cl_atomic_dec, cl_atomic_add,
       cl_atomic_xchg, cl_atomic_comp_xchg

[Functions] Component Library: Atomic Operations/cl_atomic_xchg

[top][index]

NAME

       cl_atomic_xchg

DESCRIPTION

       The cl_atomic_xchg function atomically sets a value of a
       32-bit signed integer and returns the initial value.

SYNOPSIS

CL_EXPORT int32_t CL_API
cl_atomic_xchg(
        IN      atomic32_t* const       p_value,
        IN      const int32_t           new_value );

PARAMETERS

       p_value
               [in] Pointer to a 32-bit integer to exchange with new_value.

       new_value
               [in] Value to assign.

RETURN VALUE

       Returns the initial value pointed to by p_value.

NOTES

       The provided value is exchanged with new_value and its initial value
       returned in one atomic operation.

       cl_atomic_xchg maintains data consistency without requiring additional
       synchronization mechanisms in multi-threaded environments.

SEE ALSO

       Atomic Operations, cl_atomic_inc, cl_atomic_dec, cl_atomic_add,
       cl_atomic_sub, cl_atomic_comp_xchg