Chrome डीबगर के फ़ंक्शन कॉलम में "(प्रोग्राम)" क्या है?
Chrome डीबगर के फ़ंक्शन कॉलम में "(प्रोग्राम)" क्या है?
जवाबों:
(program)
क्रोम ही है, अन्य सभी कोड को कॉल करने वाले पेड़ की जड़ ... यह वहां है क्योंकि देशी कोड से जावास्क्रिप्ट तक कूद, संसाधन लोडिंग, आदि को कहीं से शुरू करना है :)
आप Chrome डेवलपर टूल डॉक्स में ट्रीव्यू के उदाहरण देख सकते हैं ।
मेरा मानना है कि (कार्यक्रम) मूल कोड है, न कि पेड़ की जड़।
देखें यह धागा:
https://bugs.webkit.org/show_bug.cgi?id=88446
इसलिए, सिस्टम कॉल को मुख्य () की तुलना में अधिक पसंद करता है।
जाहिर है इसमें निष्क्रिय समय भी शामिल है। साथ ही, क्रोम (// प्रोफाइलर) से कुछ (प्रोग्राम) प्रोफाइल उपलब्ध है।
जैसा कि @ निक कहते हैं, इसे कहीं से शुरू करना होगा।
ऐसा लगता है कि सीपीयू प्रोफाइलर का हिस्सा बहुत सारे अन्य प्रोफाइलरों की तरह है जो समान अवधारणाओं पर आधारित हैं जैसे कि ग्रेफाइट ।
उदाहरण के लिए, स्व लगभग एक बेकार संख्या है जब तक कि कुछ कोड में बड़ी संख्या में बबल-सॉर्ट जैसा कुछ नहीं होता है जिसे आप संपादित कर सकते हैं। लगभग नामुमकिन।
संपूर्ण में कैल्लेस शामिल होना चाहिए, इसलिए यह अधिक उपयोगी है। हालाँकि, जब तक नमूने अवरुद्ध समय के साथ-साथ चलने के समय के दौरान नहीं लिए जाते, तब तक पूरी तरह से सीपीयू-बाउंड प्रोग्रामों को छोड़कर यह अभी भी बहुत बेकार है।
यह आपको कोड की लाइन के बजाय फ़ंक्शन द्वारा ये आँकड़े देता है। इसका मतलब है (यदि आप कुल प्रतिशत पर भरोसा कर सकते हैं ) कि एक फ़ंक्शन की लागत इतनी है, इस अर्थ में कि यदि आप किसी तरह इसे शून्य समय ले सकते हैं, जैसे कि इसे ठोकर मारकर, तो यह प्रतिशत कितना समय बचा सकता है।
इसलिए यदि आप एक महंगे फ़ंक्शन पर ध्यान केंद्रित करना चाहते हैं, तो आपको इसके लिए शिकार करने की आवश्यकता है जिसे अनुकूलित किया जा सकता है। ऐसा करने के लिए, आपको यह जानना होगा कि फ़ंक्शन में कोड की पंक्तियों के बीच समय को कैसे विभाजित किया गया है। यदि आपके पास कोड के आधार पर लाइन की लागत थी, तो यह आपको सीधे उन लाइनों पर ले जाएगा।
मुझे नहीं पता कि आप एक बेहतर प्रोफाइलर प्राप्त कर पाएंगे, जैसे कि लाइन-स्तर पर दीवार-घड़ी स्टैक सैम्पलर रिपोर्टिंग, जैसे कि ज़ूम । यहाँ है कि मैं यह कैसे करते हैं ।