2012-05-04 12 views
14

ऐप्पल दस्तावेज़ कहता है कि यदि आप NSOperationQueueDefaultMaxConcurrentOperationCount (डिफ़ॉल्ट) पर NSOperationQueue की maxConcurrentOperationCount प्रॉपर्टी सेट करते हैं तो यह "सिस्टम परिस्थितियों" के आधार पर रन टाइम पर मान समायोजित करेगा।NSOperationQueueDefaultMaxConcurrentOperationCount जंगली

आप मूल्य NSOperationQueueDefaultMaxConcurrentOperationCount (है जो अनुशंसित) निर्दिष्ट करते हैं, आपरेशन की अधिकतम संख्या प्रणाली की स्थिति के आधार पर डायनामिक बदल सकते हैं।

क्या कोई यह रिपोर्ट कर सकता है कि वे क्या देख रहे हैं कि विभिन्न उपकरणों पर जंगली में मूल्य निर्धारित किया जा रहा है? क्या हम पुराने फोन के लिए 1 या 2 और नए मॉडल के लिए 3-4, या 10 या ?? यह संभावना सेट या सबसे आम परिणाम में कोई अंतर्दृष्टि नहीं देता है। मुझे लगता है कि डेवलपर्स के लिए यह जानना उपयोगी होगा कि उत्पादन में क्या होने की उम्मीद है, इसके बजाय हम इसकी देखभाल करेंगे कि वे किस चीज को अनुकूलित कर रहे हैं (यूआई प्रतिक्रिया, ऑपरेशन निष्पादन गति इत्यादि)।

उत्तर

6

जैसा कि यह कई अलग-अलग विविधताओं और संसाधनों (for instance) में कहा गया है, आप कभी नहीं जानते कि आपको अपने एप्लिकेशन के वर्कफ़्लो के लिए कितने धागे बनाना चाहिए।

यह CPU समय का मामला है और लोड करें कि आपके एप्लिकेशन को कितने थ्रेड चाहिए (क्योंकि यह जंगल में अकेला नहीं है)। तो, जवाब है: कोर की संख्या के लिए

  1. अनुकूलन CPU वास्तुकला के लिए
  2. अनुकूलन
  3. वर्तमान CPU लोड के लिए
  4. अनुकूलन
+1

NSOperationQueueDefaultMaxConcurrentOperationCount कुछ समय के रूप में कई धागे बनाने के लिए कतार के रूप में यह मुश्किल हो जाता है की अनुमति देता है आईओएस ऐप के प्रबंधन के लिए। मुझे NSOperationQueueDefaultMaxConcurrentOperationCount.NO विचार का उपयोग करते समय चल रहे धागे की संख्या के कारण SIGABRT मिल रहा है, इसलिए क्यों कई ऑपरेशन बनाए जा रहे हैं। –

+0

@devgr डिबगिंग में ब्रेकपॉइंट्स और शुभकामनाएं सेट करने का प्रयास करें। आप सापेक्ष प्रश्नों की खोज कर सकते हैं, या सिर्फ अपनी जरूरतों के लिए एक नए में मदद मांग सकते हैं। –