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.

Сводка

Блокировка не является рекурсивной и не может использоваться в контексте аппаратного прерывания. Конструктор и деструктор определены как нулевые функции, чтобы упростить использование объектов с длительностью хранения static и неинициализированной памятью. Используйте метод Init для инициализации. Операторы копирования и перемещения не предоставляются.

Конструкторы и деструкторы

Mutex(void)
~Mutex(void)

Общественные функции

Lock(void)
void
Получить блокировку взаимного исключения, при необходимости заблокировав текущий поток на неопределенный срок.
Unlock(void)
void
Снять блокировку взаимного исключения (на некоторых системах может блокироваться до завершения работы планировщика).

Общедоступные статические функции

Init(Mutex & aMutex)
Error

Общественные функции

Заблокировать

void Lock(
  void
)

Получить блокировку взаимного исключения, при необходимости заблокировав текущий поток на неопределенный срок.

Блокировка

 Mutex(
  void
)

Разблокировать

void Unlock(
  void
)

Снять блокировку взаимного исключения (на некоторых системах может блокироваться до завершения работы планировщика).

~Mutex

 ~Mutex(
  void
)

Общедоступные статические функции

Init

Error Init(
  Mutex & aMutex
)