मैं हाल ही में ऑब्जेक्टिव-सी देश में किया जा रहा से सी # करने के लिए वापस स्थानांतरित कर दिया है, और async/5 नज़र शांत सी # में कीवर्ड का इंतजार है। लेकिन मैं अभी भी उचित वाक्यविन्यास पर एक संभाल पाने की कोशिश कर रहा हूं।एसिंक प्रतिनिधि को पास करने के लिए विधि हस्ताक्षर क्या है?
मैं एक विधि है कि एक पैरामीटर के रूप एक अतुल्यकालिक प्रतिनिधि लेता घोषित करने के लिए चाहते हैं, लेकिन मैं मुसीबत दोनों फोन करने वाले और कॉल प्राप्त करने वाला वाक्य रचना सही हो रही हो रहा है। क्या कोई विधि घोषणा, कॉल, और प्रतिनिधि को कॉल दिखाते हुए एक कोड नमूना प्रदान कर सकता है?
मैं सोच रहा हूँ घोषणा निम्नलिखित की तरह कुछ होगा। ध्यान दें कि यह फ़ंक्शन असीमित नहीं है; यानी इसकी असीमता प्रतिनिधि से स्वतंत्र है।
void DoSomethingWithCallback(async delegate foo(int))
{
...
foo(42);
...
}
कुछ
कॉल होगा जैसे:
DoSomethingWithCallback(async (int x) => { this.SomeProperty = await SomeAsync(x); });
इस के पाठ्यक्रम कोई भी
संकलित और नमूने मुझे लगता है कि एक एक क्षेत्र है या संपत्ति प्रतिनिधि है कि, बजाय देखा है की सबसे अधिक अज्ञात प्रतिनिधि मैं उपयोग करना चाहता हूं।
जैसा कि मैं कह सकता हूं, एक प्रतिनिधि इनलाइन निर्दिष्ट करने का कोई तरीका नहीं है, जैसा कि मैंने ऊपर दिए गए प्रश्न में किया है। एक विधि पैरामीटर के रूप में एक प्रतिनिधि का उपयोग करने के लिए, एक प्रतिनिधि प्रकार को वर्ग के दायरे के बाहर घोषित करने की आवश्यकता है। – AndrewS