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é).

~mutex

 ~Mutex(
  void
)

Fonctions statiques publiques

Init

Error Init(
  Mutex & aMutex
)