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.
Résumé
Le verrouillage est non récursif et ne peut pas être utilisé dans un contexte d'interruption matérielle. Le constructeur et le destructeur sont définis en tant que fonctions nulles pour faciliter l'utilisation d'objets avec une durée de stockage de static
et une mémoire non initialisée. Utilisez la méthode Init
pour l'initialiser. Les opérateurs de copie/déplacement ne sont pas fournis.
Constructeurs et destructeurs |
|
---|---|
Mutex(void)
|
|
~Mutex(void)
|
Fonctions publiques |
|
---|---|
Lock(void)
|
void
Acquérir le verrouillage d'exclusion mutuelle, en bloquant le thread actuel indéfiniment si nécessaire.
|
Unlock(void)
|
void
Libérez le verrouillage d'exclusion mutuelle (peut bloquer sur certains systèmes jusqu'à ce que le planificateur soit terminé).
|
Fonctions statiques publiques |
|
---|---|
Init(Mutex & aMutex)
|
Error
|
Fonctions publiques
Verrouiller
void Lock( void )
Acquérir le verrouillage d'exclusion mutuelle, en bloquant le thread actuel indéfiniment si nécessaire.
Coupure du son
Mutex( void )
Déverrouiller
void Unlock( void )
Libérez le verrouillage d'exclusion mutuelle (peut bloquer sur certains systèmes jusqu'à ce que le planificateur soit terminé).