Open CASCADE Technology  7.2.0
Functions

Standard_Atomic.hxx File Reference

Implementation of some atomic operations (elementary operations with data that cannot be interrupted by parallel threads in the multithread process) on various platforms. More...

Functions

int Standard_Atomic_Increment (volatile int *theValue)
 Increments atomically integer variable pointed by theValue and returns resulting incremented value. More...
 
int Standard_Atomic_Decrement (volatile int *theValue)
 Decrements atomically integer variable pointed by theValue and returns resulting decremented value. More...
 

Detailed Description

Implementation of some atomic operations (elementary operations with data that cannot be interrupted by parallel threads in the multithread process) on various platforms.

By the moment, only operations necessary for reference counter in Standard_Transient objects are implemented.

This is preffered to use fixed size types "int32_t" / "int64_t" for correct function declarations however we leave "int" assuming it is 32bits for now.

Function Documentation

◆ Standard_Atomic_Decrement()

int Standard_Atomic_Decrement ( volatile int *  theValue)
inline

Decrements atomically integer variable pointed by theValue and returns resulting decremented value.

◆ Standard_Atomic_Increment()

int Standard_Atomic_Increment ( volatile int *  theValue)
inline

Increments atomically integer variable pointed by theValue and returns resulting incremented value.