2012-09-06 7 views
5

मेरे पास एक विजुअल स्टूडियो प्रोजेक्ट है जिसमें एक सी # विंडोज एप्लिकेशन है जो एक एफ # वर्ग का संदर्भ देता है। जब मैं विजुअल स्टूडियो 2010 प्रदर्शन प्रोफाइलर को उपकरण मोड में चलाता हूं तो मुझे सी # एप्लिकेशन के अलावा एफ # कक्षा के लिए कोई उपकरण जानकारी नहीं मिलती है।एफ # प्रदर्शन प्रोफाइलर इंस्ट्रुमेंटेशन काम नहीं कर रहा

जब मैं नमूना मोड में चलाता हूं तो यह ठीक काम करता है।

मैंने वीएस2012 में प्रोजेक्ट चलाने की कोशिश की है और एक ही समस्या प्राप्त की है।

मैं एफ # कक्षा के लिए उपकरण जानकारी दिखाने के लिए विजुअल स्टूडियो कैसे प्राप्त करूं?

उत्तर

4

जब आप उपकरण मोड में भागते हैं, तो प्रोफाइलर प्रदर्शन डेटा रिकॉर्ड करने के लिए प्रत्येक विधि के प्रवेश/निकास बिंदुओं पर थोड़ा कोड इंजेक्ट करता है; हालांकि, यह केवल उस प्रोफाइलिंग कोड को उस असेंबली में इंजेक्ट करता है जिसे आप वास्तव में प्रोफाइल कर रहे हैं (उदा।, आपका सी # एप्लिकेशन) और संदर्भित असेंबली में से कोई भी नहीं।

तो, आपको सीधे F # असेंबली को प्रोफ़ाइल करने की आवश्यकता है। मुझे लगता है कि यह एक लाइब्रेरी है, इस मामले में आपको अपने सी # एप्लिकेशन को स्टार्ट प्रोग्राम के रूप में निर्दिष्ट करने की आवश्यकता है - इसलिए प्रोफाइलर सी # ऐप शुरू करेगा लेकिन वास्तव में एफ # लाइब्रेरी को उपकरण और प्रोफाइल करेगा। ऐसा करने के लिए सेटिंग्स के लिए एमएसडीएन आलेख How to: Specify the Binary to Start देखें।

+0

यह एक इलाज किया। –

+1

मैंने लॉन्च प्रदर्शन विज़ार्ड का उपयोग किया, 'उपकरण' चुना और फिर 'गतिशील-लिंक लाइब्रेरी' चुना। मैंने डीएलएल का चयन किया और exe बनाता है फ़ोल्डर से exe। एक और बात, मुझे इसे x86 में चलाने की ज़रूरत थी, क्योंकि यह किसी भी सीपीयू के साथ काम नहीं कर रहा था। हेलो के लिए धन्यवाद। –

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