जिस दृष्टिकोण का मैंने उपयोग किया है, और मुझे लगता है कि सही है, है
volatile bool b = false;
.. rarely signal an update with a large state change...
lock b_lock
{
b = true;
}
... another thread ...
if(b)
{
lock b_lock
{
if(b)
{
b = false;
}
}
}
लक्ष्य को मूल रूप से हर पुनरावृत्ति पर किसी वस्तु को फिर से जांचने से बचने के लिए किया गया था, ताकि यदि हम बड़ी मात्रा में राज्य परिवर्तन की जानकारी प्रदान करने के लिए इसे बंद कर सकें, तो शायद ही ऐसा हो। मुझे लगता है कि यह दृष्टिकोण काम करता है। और अगर पूर्ण सामंजस्य की आवश्यकता होती है, तो मुझे लगता है कि b मल पर अस्थिरता उचित होगी।