2013-03-10 4 views
21

MethodImplOptions.AggressiveInlining और TargetedPatchingOptOut विकल्प के साथ MethodImplAttribute के बीच क्या अंतर है?MethodImplOptions.AggressiveInlining बनाम TargetedPatchingOptOut

जब मैंने Google पर खोज की तो हर कोई कहता है कि दोनों (शायद) विधि को इनलाइन कर सकते हैं लेकिन अंतर दिए बिना।

+2

लक्ष्यित पैचिंगऑप्टऑट यहां काफी अच्छी तरह से समझाया गया है: http://stackoverflow.com/questions/6109745 महत्वपूर्ण हिस्सा यह प्रतीत होता है कि इनलाइनिंग असेंबली सीमाओं में की जाती है, जो डिफ़ॉल्ट रूप से नहीं की जाती है। मैं उम्मीद करता हूं कि आक्रामक इंलाइनिंग विधि को रेखांकित करने का संकेत है, लेकिन लक्ष्यित पैचिंगऑप्टऑट के विपरीत असेंबली सीमाओं में रेखांकित करने की अनुमति नहीं है। – dtb

+0

आपकी टिप्पणी पढ़ने के बाद मैंने थोड़ा और शोध किया और यह पाया [लिंक] (http://blogs.microsoft.co.il/blogs/sasha/archive/2012/01/20/aggressive-inlining-in- -clr-4-5-jit.aspx)। इस पोस्ट की मेरी समझ यह है कि आप दोनों विशेषताएं लागू कर सकते हैं AggressiveInlining विधि की आकार सीमा को हटा देगा, जबकि आपने कहा था कि लक्ष्यित पैचिंगऑप्टऑट असेंबली सीमाओं में रेखांकित करने की अनुमति देगा। क्या वो सही है? –

+0

इस तरह मैं इसे भी समझूंगा। – dtb

उत्तर

11

मैं यह देखने का इंतजार कर रहा था कि कोई और बेहतर जवाब दे सकता है लेकिन ऐसा नहीं लगता है।

डीटीबी टिप्पणी पढ़ने के बाद मैंने थोड़ा और शोध किया और यह http://blogs.microsoft.co.il/blogs/sasha/archive/2012/01/20/aggressive-inlining-in-the-clr-4-5-jit.aspx पाया।

इस पोस्ट की मेरी समझ यह है कि आप दोनों विशेषताएं लागू कर सकते हैं AggressiveInlining विधि की इन-लाइनिंग आकार सीमा को हटा देगा, जबकि डीटीबी ने कहा था कि लक्ष्यित पैचिंगऑप्टऑट असेंबली सीमाओं में रेखांकित करने की अनुमति देगा।

+7

जैसा ऊपर बताया गया है, अपने कोड में TargetedPatchingOptOut लागू न करें - http://stackoverflow.com/a/14982340/94078 देखें – eug

संबंधित मुद्दे