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 וה-destructor מוגדרים כפונקציות 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 )
משחררים את נעילת ההחרגה ההדדית (יכולה לחסום מערכות מסוימות עד שהתזמון יושלם).