I recently सीखा कि GetAwaiter
विधि awaiter लौटने वाली विधि await
-ed हो सकती है। यह सच है भले ही यह एक विस्तार विधि है, जिसका अर्थ है मूल रूप से किसी भी ऑब्जेक्ट को await
-able बनाया जा सकता है, यदि आप चुनते हैं।क्या यह बताना संभव है कि कोई ऑब्जेक्ट रनटाइम पर प्रतीक्षा योग्य है या नहीं?
लेकिन अगर कोई ऑब्जेक्ट await
-able है तो रनटाइम पर बताने का कोई तरीका है? सामान्य प्रतिबिंब काम नहीं करेगा, क्योंकि यह किसी ऑब्जेक्ट के विस्तार विधियों की सूची नहीं देता है।
इस प्रश्न पूछते समय मुझे कोई विशेष आवश्यकता नहीं है, अगर यह संभव हो तो मैं उत्सुक हूं।
नहीं, क्योंकि दोनों विधियां कंपाइलर द्वारा किए गए बतख-टाइपिंग का उपयोग करती हैं। यहां तक कि यदि आप कर सकते हैं, तो आप उस जानकारी के साथ क्या करेंगे? –
क्या कोई सीधा कारण है कि आप प्रतिबिंब के साथ विस्तार विधियों की तलाश नहीं कर सकते हैं? मैं देख सकता हूं कि वे आसानी से क्यों उपलब्ध नहीं हैं, लेकिन मुझे कोई कारण नहीं दिख रहा है जिसे आप खोज नहीं सकते हैं। – 31eee384
@ 31eee384 उपलब्ध एक्सटेंशन का सेट स्रोत कोड में या उस समय लोड होने वाली असेंबली के सेट पर निर्भर कथन पर निर्भर करता है। – usr