C# में: Volatile, Interlocked या lock — सरल फ़्लैग की थ्रेड-सुरक्षा के लिए क्या चुनें?
नमस्ते साथियों! मैं एक शुरुआती C# डेवलपर हूँ और मल्टीथ्रेडिंग को समझने की कोशिश कर रहा हूँ। मेरे पास एक सरल class है जो एक background thread शुरू करता है। Thread को तब तक काम करना चाहिए जब तक `_isRunning` flag true है। दूसरा thread (जैसे UI) इस flag को false सेट कर सकता है ताकि background काम रुक जाए।
यहाँ सरलीकृत कोड है:
```csharp
public class Worker
{
private bool _isRunning = true;
public void Start()
{
Task.Run(() =>
{
while (_isRunning)
{
// कुछ काम
Console.WriteLine("Working...");
Thread.Sleep(100);
}
});
}
public void Stop()
{
_isRunning = false;
}
}
```
मैंने पढ़ा है कि bool का सरल read/write स्पष्ट रूप से
अभी तक कोई उत्तर नहीं।
लॉग इन करें उत्तर देने के लिए
ब्लॉग