10
अगर वहाँ CancellationTokenSource और बाहर निकलने ध्वज के साथ समाप्त पाश कार्य के बीच कोई अंतर है मैं सोच रहा थाअंतर
CancellationTokenSource:
CancellationTokenSource cancellationTokenSource;
Task loopTask;
void StartLoop()
{
cancellationTokenSource = new CancellationTokenSource();
loopTask = Task.Factory.StartNew(Loop, TaskCreationOptions.LongRunning);
}
void Loop()
{
while (true)
{
if (cancellationTokenSource.IsCancellationRequested)
break;
Thread.Yield();
}
}
void StopLoop()
{
cancellationTokenSource.Cancel();
loopTask = null;
cancellationTokenSource = null;
}
बाहर निकलें झंडा:
volatile bool exitLoop;
Task loopTask;
void StartLoop()
{
exitLoop = false;
loopTask = Task.Factory.StartNew(Loop, TaskCreationOptions.LongRunning);
}
void Loop()
{
while (true)
{
if (exitLoop)
break;
Thread.Yield();
}
}
void StopLoop()
{
exitLoop = true;
loopTask = null;
}
मेरे लिए यह कोई भी नहीं बनाता है रद्दीकरण टोकनसोर्स का उपयोग करने के लिए sance, btw कोई कारण है कि रद्दीकरण टोकन टास्क फैक्ट्री के पैरामीटर के रूप में क्यों जोड़ा जा सकता है?
किसी भी प्रकार के उत्तर के लिए आपको बहुत बहुत धन्यवाद।
बेस्ट ragards teamol
क्या आप मुझे टास्ककैलेशनेशन के सही उपयोग का उदाहरण प्रदान कर सकते हैं? तो कार्य स्थिति चलने से बदलती है? और आप टोकन कैसे प्राप्त करेंगे जो स्टार्टन्यू विधि में पारित किया गया था? – Teamol
@ टीमोल 'रन', 'स्टार्ट न्यू', और 'जारी रखें' सभी में रद्दीकरण टोकन के लिए पैरामीटर हैं। एक में पास करें। – Servy