एसिंक्रोनस कॉल को कैसे रद्द करें? .NET एपीएम इस ऑपरेशन का समर्थन नहीं कर रहा है।एसिंक्रोनस कॉल को कैसे रद्द करें?
मेरे पास मेरे कोड में निम्न लूप है जो थ्रेडपूल पर एकाधिक धागे उत्पन्न करता है। जब मैं अपने यूआई पर एक बटन क्लिक करता हूं, तो मुझे ये थ्रेड (या असीमित कॉल) समाप्त करना होगा।
foreach (var sku in skus)
{
loadSku.BeginInvoke(...
}
क्या ग्लोबल "फ्लैग रद्द करें" बनाने के अलावा कोई अजीब समाधान है और इसे देखने के लिए असीमित तरीके हैं?
+1 - एक अतिरिक्त के रूप में; 'ThreadPool.QueueUserWorkItem' के साथ उपयोग किया गया 'WaitCallback' एक कस्टम ऑब्जेक्ट पैरामीटर लेता है, ताकि कस्टम थ्रेडस्टार्ट प्रतिनिधियों को बनाने के बजाय भी इसका उपयोग किया जा सके। –
आह हाँ - मैं आपके QueueUserWorkItem बिंदु को plagarise करेंगे। यह काफी हद तक वही है, लेकिन मुझे खुद को धागे के प्रबंधन के बजाय ** ** हमेशा टीपी.QUWI का उपयोग करना है। –
+1: और QUWI के विषय पर, यह अधिक हल्का वजन है क्योंकि पूल पूर्ण नहीं होने पर थ्रेड बनाने की आवश्यकता नहीं है (/ हो सकता है)। –