PxSyncImpl

Defined in include/foundation/PxSync.h

class PxSyncImpl

Implementation notes:

  • Calling set() on an already signaled Sync does not change its state.

  • Calling reset() on an already reset Sync does not change its state.

  • Calling set() on a reset Sync wakes all waiting threads (potential for thread contention).

  • Calling wait() on an already signaled Sync will return true immediately.

  • NOTE: be careful when pulsing an event with set() followed by reset(), because a thread that is not waiting on the event will miss the signal.

Public Functions

PxSyncImpl()
~PxSyncImpl()
bool wait(uint32_t milliseconds = waitForever)

Wait on the object for at most the given number of ms.

Returns true if the object is signaled. Sync::waitForever will block forever or until the object is signaled.

void set()

Signal the synchronization object, waking all threads waiting on it.

void reset()

Reset the synchronization object.

Public Static Functions

static uint32_t getSize()

Size of this class.

Public Static Attributes

static const uint32_t waitForever = 0xffffffff