2012-02-06 17 views
7

क्या होता है यदि कोई उपयोगकर्ता पृष्ठभूमि कतार पर एसिंक्रोनिक रूप से निष्पादित होता है जब उपयोगकर्ता ऐप छोड़ देता है? क्या इसे समाप्त कर दिया जाएगा? –applicationWillTerminate: में इसे संभालने के लिए यह मेरे पास है?ऐप समाप्त होने पर जीसीडी डिस्पैच कतार पर चल रहे ब्लॉक के साथ क्या होता है?

मैं लंबे समय तक चलने वाले कार्यों के बारे में बात नहीं कर रहा हूं .. बस सोच रहा हूं कि ऐसा कुछ करने में अंतर्निहित खतरा है जो असंगत स्थिति को असंकालिक रूप से ले जा सकता है?

उत्तर

2

जब कोई ऐप निकलता है तो सभी थ्रेड्स (जीसीडी निर्मित या नहीं) समाप्त हो जाते हैं, इसलिए हाँ, ब्लॉक पहले से नहीं होगा (कभी) अगर यह पहले से नहीं है। यदि काम पूरा किया जा रहा है जिसे ऐप सुरक्षित रूप से बाहर निकलने से पहले पूरा करने की आवश्यकता है तो आप उस के लिए इंतजार कर सकते हैं -प्लिकेशंस विल्ट टर्मिनेट, लेकिन वास्तव में चीजों को इस तरह से सेट करना एक अच्छा विचार नहीं है क्योंकि आपका ऐप उपयोगकर्ता द्वारा भी मजबूर हो सकता है और -प्लिकेशंस विल्ट टर्मिनेट कभी नहीं चल सकता है।

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