UCommon
ucommon::Atomic::spinlock Class Reference

Atomic spinlock class. More...

#include <atomic.h>

Public Member Functions

bool acquire (void) volatile
 NAMESPACE_UCOMMON Acquire the lock.
 
void release (void) volatile
 Release an acquired spinlock.
 
 spinlock ()
 Construct and initialize spinlock.
 
void wait (void) volatile
 Wait for and aquire spinlock.
 

Detailed Description

Atomic spinlock class.

Used as high-performance sync lock between threads.

Author
David Sugar dyfet.nosp@m.@gnu.nosp@m.telep.nosp@m.hony.nosp@m..org

Definition at line 99 of file atomic.h.

Member Function Documentation

◆ acquire()

bool ucommon::Atomic::spinlock::acquire ( void ) volatile

NAMESPACE_UCOMMON Acquire the lock.

If the lock is not acquired, one "spins" by doing something else. One suggestion is using thread::yield.

Returns
true if acquired.

The documentation for this class was generated from the following file: