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.
Zusammenfassung
Die Sperre ist nicht rekursiv und darf nicht in Verbindung mit Hardware-Unterbrechungen verwendet werden. Der Konstruktor und der Destruktor sind als Nullfunktionen definiert, um die Verwendung von Objekten mit einer Speicherdauer von static
und nicht initialisiertem Arbeitsspeicher zu erleichtern. Verwenden Sie die Methode Init
zum Initialisieren. Die Operatoren zum Kopieren/Verschieben sind nicht angegeben.
Konstruktoren und Zerstörer |
|
---|---|
Mutex(void)
|
|
~Mutex(void)
|
Öffentliche Funktionen |
|
---|---|
Lock(void)
|
void
Rufen Sie die gegenseitige Ausschlusssperre ab und blockieren Sie den aktuellen Thread gegebenenfalls auf unbestimmte Zeit.
|
Unlock(void)
|
void
Die gegenseitige Ausschlusssperre aufheben (kann auf einigen Systemen blockiert werden, bis der Planer abgeschlossen ist).
|
Öffentliche statische Funktionen |
|
---|---|
Init(Mutex & aMutex)
|
Error
|
Öffentliche Funktionen
Sperren
void Lock( void )
Rufen Sie die gegenseitige Ausschlusssperre ab und blockieren Sie den aktuellen Thread gegebenenfalls auf unbestimmte Zeit.
Stummel
Mutex( void )
Entsperren
void Unlock( void )
Die gegenseitige Ausschlusssperre aufheben (kann auf einigen Systemen blockiert werden, bis der Planer abgeschlossen ist).