asynctask चल रहा रहेगा। Asynctask मर सकता है क्योंकि एंड्रॉइड ओएस कम चल रहा है जब स्मृति पुनः प्राप्त करने की कोशिश करता है। यदि आपको परवाह नहीं है कि एसिंक कार्य खत्म नहीं हो सकता है, तो शायद इससे कोई फर्क नहीं पड़ता, लेकिन यह खराब अभ्यास है।
इसके अलावा, हो सकता है कि जब आप परिणाम को संग्रहीत/संभालने के तरीके के आधार पर एसिंक कार्य मर जाएंगे, तो आप उस गतिविधि में किसी गतिविधि/ऑब्जेक्ट को संपादित करने का प्रयास करने का जोखिम उठाते हैं जो नतीजे नहीं है, जिसके परिणामस्वरूप नलपॉइंटटेरेक्सप्शन और अन्य बुरी चीजें होती हैं। उचित ऐसा करने का तरीका सेवा आपकी गतिविधि से शुरू करना होगा और सेवा से एसिंकक्ट शुरू करना होगा। आप इस बात गूगल आईओ पर दिया 2010 में उल्लिखित डिजाइन पैटर्न में से एक का पालन करना चाहिए:
Android REST Client Design Patterns
यह दिलचस्प बात है, लेकिन पालन करने के लिए कठिन है और कोई कोड देता है, तो यहाँ एक अच्छा ट्यूटोरियल है कि मैं जानने के लिए प्रयोग किया जाता है इस सामग्री:
Downloading Data with Services
इसके अलावा, एंड्रॉयड आप के लिए अपने asynch कार्यों की एक ThreadPool का प्रबंधन करेगा (मैं विश्वास है कि यह उनकी हत्या शुरू कर देंगे, जब आप अपने प्रक्रिया में अधिक से अधिक 5 हैं) तो आप की जरूरत नहीं है मार डालो। यहाँ जवाब की जाँच:
How AsyncTasks die
स्रोत
2011-10-04 22:11:55