इसलिए, मैं एक WPF ऐप बना रहा हूं और आज टेस्ट परिनियोजन किया, और पाया कि यह बहुत खराब प्रदर्शन करता है। मैं आश्चर्यचकित था, क्योंकि हम वास्तव में दृश्य प्रभाव या एनिमेशन के रास्ते में बहुत कुछ नहीं कर रहे हैं।डब्ल्यूपीएफ: पुराने पीसी पर चलने के लिए प्रदर्शन में सुधार
मैंने दो मशीनों पर तैनात किया: सबसे तेज़ और धीमा जो एप्लिकेशन को चलाने की आवश्यकता होगी (सबसे धीमे पीसी में इंटेल सेलेरॉन 1.80GHz 2 जीबी रैम है)। एप्लिकेशन तेजी से मशीन पर बहुत अच्छी तरह से चला गया, लेकिन धीमी मशीन पर चटनी थी। और जब मैं "चंचल" कहता हूं, मेरा मतलब है कि कर्सर फोकस करने वाले ऐप की किसी भी खुली खिड़की पर बस इसे पार कर गया।
मैंने टास्क मैनेजर प्रदर्शन विंडो खोली, और यह देख सकता था कि जब भी ऐप फोकस करता था और कर्सर उस पर आगे बढ़ रहा था तो CPU उपयोग कूद गया था। अगर मैंने किसी अन्य (उदा। एक्सेल) पर ध्यान दिया, तो CPU उपयोग एक सेकंड के बाद वापस चला गया। यह दोनों मशीनों पर हुआ, लेकिन चपटापन धीमी मशीन पर केवल ध्यान देने योग्य था। तैनाती मशीनों पर टिंकर करने के लिए मेरे पास बहुत सीमित समय था, इसलिए बहुत विस्तृत परीक्षण नहीं किया।
ऐप मेरी विकास मशीन पर ठीक चलाता है, लेकिन मैं सीपीयू स्पाइकिंग को 10% तक देखता हूं, बस खिड़की पर कर्सर चला रहा हूं।
मैंने एमएस से डब्ल्यूपीएफ प्रदर्शन उपकरण डाउनलोड किया और इसके साथ (मेरे देव मशीन पर) tinkering रहा है। डॉक्स "फ़्रेम दर" ड्रिलिंग उपकरण में मीट्रिक के बारे में यह कहना:
एनीमेशन के बिना अनुप्रयोगों के लिए, यह मान 0.
एप्लिकेशन को किसी भी भारी एनिमेशन नहीं कर रहा है के पास होना चाहिए, लेकिन कर्सर किसी भी खिड़की पर होने पर फ्रेम दर 50 के करीब रहता है। जिन स्क्रीनों पर मैंने परीक्षण किया है उनमें कॉलम हेडर एक ग्रिड में हैं जो "हाइलाइट" और बटन जो स्क्रॉल किए जाने पर रंग और उपस्थिति को बदलते हैं। खिड़कियों के रिक्त क्षेत्रों पर भी माउस को ले जाने के कारण एक ही फ्रेम दर और सीपीयू उपयोग (इन मामूली एनिमेशन से संबंधित प्रतीत नहीं होता है)।
(साथ ही, मैं यह समझने में असमर्थ हूं कि दो डिफ़ॉल्ट उपकरण - छिद्रक और विजुअल प्रोफाइलर - WPF प्रदर्शन टूल में स्थापित किया गया है। यह संभवतः एक अलग प्रश्न है)।
मेरे पास रेडगेट का प्रोफाइलिंग टूल भी है, लेकिन मुझे यकीन नहीं है कि क्या प्रदर्शन को प्रदर्शित करने पर कोई प्रकाश डाला जा सकता है।
तो, मुझे एहसास है कि विनिर्देश या नमूना कोड (जिसे मैं पोस्ट नहीं कर सकता) के बिना समस्या निवारण के लिए यह एक आसान बात नहीं है। मेरे प्रश्न हैं:
- क्या कुछ सामान्य बातें कोड में लिए देखने के (या बचने के लिए) प्रदर्शन में सुधार करने के लिए कर रहे हैं?
- क्या कदम मैं समस्या को कम करने के लिए WPF प्रदर्शन उपकरण का उपयोग कर सकते हैं?
- क्या पीसी स्पेक ऊपर सूचीबद्ध है (इंटेल सेलेरॉन 1.80GHz 2 जीबी रैम के साथ) भी वेनिला डब्ल्यूपीएफ अनुप्रयोगों को चलाने में धीमा है?