क्या मुझे लोडिंग स्क्रीन के दौरान कचरा कलेक्टर को कॉल करना चाहिए?


9

इसलिए, मैंने हाल ही में कचरा संग्रह पर थोड़ा सा पढ़ा, जिज्ञासा से बाहर, और कुछ ऐसा है जो अक्सर दोहराया जाता है: कचरा संग्रह कार्यक्रम के "गहराई" के आधार पर कार्यक्रम के अचानक धीमा हो सकता है।

लेकिन वीडियो गेम में, एक ऐसा क्षण है जहां उपयोगकर्ता वास्तव में एक छोटे अंतराल: लोडिंग स्क्रीन को नोटिस नहीं कर सकता है। इसलिए, मैंने सोचा, एक लोडिंग चरण (कलेक्ट () के माध्यम से) में एक दूसरे या दो से अधिक समय तक इंतजार करना उपयोगी नहीं होना चाहिए, इससे वास्तव में उपयोगकर्ता को प्रभावित नहीं होना चाहिए।

मेरा सवाल यह है कि क्या यह वास्तव में उपयोगी है, या क्या ऐसा करने का कोई वास्तविक लाभ नहीं है?


अपने गेम के लिए डिबग प्रक्रिया के भाग के रूप में, मैंने उपयोगकर्ता को किसी भी समय कचरा कलेक्टर को कॉल करने का विकल्प प्रदान किया है। यह कैसे चलता है, इसके आधार पर, यह गेम के अंतिम निर्माण में भी मौजूद हो सकता है। मैं इसे लोडिंग स्क्रीन के दौरान और आम तौर पर किसी अन्य समय पर कॉल करने का सुझाव दूंगा जहां यह उपयोगकर्ता को नेत्रहीन रूप से बाधित नहीं करेगा। यदि आपके गेम में डेथ एनीमेशन है, जो ब्लैक स्क्रीन पर जाता है, तो यह कचरा कलेक्टर को भी कॉल करने का एक सही अवसर होगा।
२२:

जवाबों:


13

हां, इसे आखिरी चीज के रूप में कहें जो आप लोड करते समय करते हैं।

यह जीसी के कारण शुरुआती स्तर और पहले अंतराल के बीच के समय को अधिकतम करेगा।

आपको सामान्य रूप से आवंटन को कम से कम करने की कोशिश करनी चाहिए, भले ही आपको किसी स्तर के दौरान अधिक अंतराल न मिले।

देखें 360 और WP7 के पर खराब प्रदर्शन और कचरा कलेक्टर निर्वाण के लिए ट्विन पथ


1
इसके अलावा यह बहुत ज्यादा है, केवल आपको इसे कॉल करना चाहिए - विशेष रूप से कॉम्पैक्ट फ्रेमवर्क (एक्सबॉक्स, विनफोन) पर।
जोनाथन डिकिंसन

1
@JonathanDickinson: बिल्कुल। यह केवल वास्तव में कहा जाना चाहिए जहां उपयोगकर्ता एक ठहराव की उम्मीद करेगा (लोडिंग आमतौर पर, शायद बचत भी), और निश्चित रूप से लूप / नियमित घटना के हिस्से के रूप में नहीं।
जॉर्ज डकेट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.