न तो इन काम के लैम्ब्डा अभिव्यक्ति कनवर्ट नहीं कर सकता:टाइप करने के लिए 'System.Delegate'
_uiDispatcher.Invoke(() => { });
_uiDispatcher.Invoke(delegate() { });
सभी मैं करना चाहता हूँ मेरी मुख्य यूआई धागे पर एक इनलाइन विधि आह्वान है। इसलिए मैं मुख्य थ्रेड पर इस बुलाया:
_uiDispatcher = Dispatcher.CurrentDispatcher;
और अब मैं एक धागे से कि धागे पर कुछ कोड निष्पादित करने के लिए चाहते हैं। मैं यह कैसे करुं? क्या मैं गलत वाक्यविन्यास का उपयोग कर रहा हूं?
ध्यान दें कि यह एक WPF अनुप्रयोग नहीं है; मैंने WindowsBase
का संदर्भ दिया है, इसलिए मैं कक्षा तक पहुंच प्राप्त कर सकता हूं।
के माध्यम से पहुँचा जा सकता है है, तो किस तरह के '_uiDispatcher' है? क्या आपने यूआई की सिंक्रनाइज़ ऑब्जेक्ट का उपयोग किया था? – IAbstract
'uiDispatcher' http://msdn.microsoft.com/en-us/library/system.windows.threading.dispatcher.aspx का एक उदाहरण है। मैंने सोचा था कि '_uiDispatcher = Dispatcher.CurrentDispatcher' से निहित था। "यूआई" में सिंक्रनाइज़ ऑब्जेक्ट AFAIK नहीं है .... लेकिन मैं इसका उपयोग कैसे करूं? मेरे लिए यह क्या करेगा? – mpen
आह ... ठीक है, मुझे नहीं लगता कि थ्रेड प्रेषक काम करने जा रहा है। क्या यह एक WinForm एप्लिकेशन है? – IAbstract