nl:: Weave:: System:: Mutex
#include <src/system/SystemMutex.h>
This class represents a simple mutual exclusion lock used on platforms with preemptively scheduled multi-threaded programming environments, for example, POSIX threads and FreeRTOS.
Riepilogo
Il blocco non è ricorsivo e non può essere utilizzato in un contesto di interruzione dell'hardware. Il costruttore e il distruttore sono definiti come funzioni null per facilitare l'utilizzo di oggetti con una durata di archiviazione di static
e memoria non inizializzata. Usa il metodo Init
per inizializzare. Gli operatori di copia/spostamento non sono forniti.
Costruttori e distruttori |
|
---|---|
Mutex(void)
|
|
~Mutex(void)
|
Funzioni pubbliche |
|
---|---|
Lock(void)
|
void
Acquisisci il blocco di esclusione reciproca, bloccando il thread corrente a tempo indeterminato, se necessario.
|
Unlock(void)
|
void
Rilascia il blocco di esclusione reciproca (può essere bloccato su alcuni sistemi fino al completamento dello scheduler).
|
Funzioni statiche pubbliche |
|
---|---|
Init(Mutex & aMutex)
|
Error
|
Funzioni pubbliche
Blocca
void Lock( void )
Acquisisci il blocco di esclusione reciproca, bloccando il thread corrente a tempo indeterminato, se necessario.
Disattiva audio
Mutex( void )
Sblocca
void Unlock( void )
Rilascia il blocco di esclusione reciproca (può essere bloccato su alcuni sistemi fino al completamento dello scheduler).