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 )
म्यूचुअल एक्सक्लूज़न लॉक को रिलीज़ करें (शेड्यूलर के पूरा होने तक कुछ सिस्टम पर ब्लॉक हो सकता है).