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.

סיכום

הנעילה היא לא רקורסיבית ולא ניתן להשתמש בה בהקשר של הפרעות חומרה. ה-constructor והכלי ההרוס מוגדרים כפונקציות null כדי לאפשר שימוש באובייקטים עם משך אחסון של 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
)