"मल्टीटास्किंग = एकाच वेळी अनेक प्रक्रिया करण्याची क्षमता" हा धडा आपल्या सर्वांना माहीत आहे. आम्ही ते आमच्या संगणकात वापरतो, त्याच्या उपस्थितीची विशेष जाणीव न होता. एका ऍप्लिकेशनच्या ऍप्लिकेशन्स किंवा विंडोमध्ये स्विच करणे (आमच्यासाठी) रिअल टाइममध्ये होते आणि आम्ही ऑपरेटिंग सिस्टमची ही क्षमता गृहीत धरतो.
काम वेगळे
ऑपरेटिंग सिस्टीम सर्व ऍप्लिकेशन्सना थोड्या वेळाने प्रोसेसर वाटप करते. हे कालावधी इतके लहान आहेत की आपण ते लक्षात घेऊ शकत नाही, त्यामुळे असे दिसते की सर्व अनुप्रयोग एकाच वेळी प्रोसेसर वापरत आहेत. आपल्याला असे वाटू शकते iOS 4 मध्ये मल्टीटास्किंग अगदी समान कार्य करते. असे नाही. मुख्य कारण अर्थातच बॅटरीची क्षमता आहे. जर सर्व ऍप्लिकेशन्स पार्श्वभूमीत चालत राहिल्या असत्या, तर आम्हाला काही तासांत सॉकेट शोधावे लागेल.
iOS 4 शी सुसंगत बहुतेक ऍप्लिकेशन्स "निलंबित मोड" मध्ये ठेवले जातात किंवा होम बटण दाबल्यानंतर स्लीप केले जातात. एक समानता लॅपटॉपचे झाकण बंद करणे असू शकते, जे लगेच स्लीप मोडमध्ये जाते. झाकण उघडल्यानंतर, लॅपटॉप जागा होतो आणि झाकण बंद करण्यापूर्वी सर्व काही अगदी त्याच स्थितीत आहे. शिवाय, असे ॲप्लिकेशन्स आहेत जिथे होम बटण दाबल्याने ते संपतात. आणि त्याद्वारे आमचा अर्थ एक वास्तविक समाप्ती आहे. यापैकी कोणती पद्धत वापरायची याची निवड विकसकांकडे असते.
परंतु अर्जांची आणखी एक श्रेणी आहे. तुम्ही तुमच्या iDevice वर काहीतरी पूर्णपणे वेगळं करत असलो तरीही हे ॲप्स खरोखरच पार्श्वभूमीत चालतात. स्काईप हे एक चांगले उदाहरण आहे कारण त्याला सतत इंटरनेट कनेक्शनची आवश्यकता असते. इतर उदाहरणे पार्श्वभूमीत संगीत प्ले करणारे ॲप्स (Pandora) किंवा GPS चा सतत वापर आवश्यक असलेले ॲप्स असू शकतात. होय, हे ॲप्स बॅकग्राउंडमध्ये चालू असतानाही तुमची बॅटरी संपवतात.
झोपा किंवा शूट करा?
iOS 4 शी सुसंगत काही ऍप्लिकेशन्स, जे होम बटण दाबल्यानंतर स्लीप ("निलंबित मोड" मध्ये ठेवावे) बॅकग्राउंडमध्ये चालू ठेवा. ॲपलने डेव्हलपरला ॲपला त्याचे कार्य पूर्ण करण्यासाठी अगदी दहा मिनिटे दिली, मग ते काहीही असो. समजा तुम्ही GoodReader मध्ये फाइल डाउनलोड करत आहात. अचानक कोणीतरी तुम्हाला कॉल करू इच्छितो आणि तुम्हाला तो महत्त्वाचा कॉल स्वीकारावा लागेल. कॉल दहा मिनिटांपेक्षा जास्त काळ टिकला नाही, तुम्ही गुडरीडर ऍप्लिकेशनवर परत याल. फाइल आधीच डाउनलोड केलेली असू शकते किंवा अजूनही डाउनलोड केली जात आहे. कॉलला दहा मिनिटांपेक्षा जास्त वेळ लागल्यास? आमच्या बाबतीत गुडरीडर ऍप्लिकेशनला त्याची क्रिया थांबवावी लागेल आणि iOS ला सांगावे लागेल की ते झोपेत ठेवता येईल. तिने तसे न केल्यास, तिला iOS द्वारेच निर्दयपणे संपुष्टात आणले जाईल.
आता तुम्हाला "मोबाइल" आणि "डेस्कटॉप" मल्टीटास्किंगमधील फरक माहित आहे. संगणकासाठी ऍप्लिकेशन्समधील स्विचिंगची प्रवाहीता आणि गती महत्त्वाची असली तरी, मोबाइल डिव्हाइससाठी बॅटरीचे आयुष्य नेहमीच सर्वात महत्त्वाचे असते. मल्टीटास्किंगलाही या वस्तुस्थितीशी जुळवून घ्यावे लागले. म्हणून, हा लेख वाचल्यानंतर, तुम्ही दोनदा होम बटण दाबल्यास, तुम्हाला यापुढे "पार्श्वभूमीत चालू असलेल्या ऍप्लिकेशन्सचा बार" दिसणार नाही, परंतु मूलत: फक्त "अलीकडे वापरलेल्या ऍप्लिकेशन्सची सूची" दिसेल.
लेखक: डॅनियल ह्रुस्कास्त्रोत: onemoretap.com
हम्म, मनोरंजक :) मला नेहमी वाटायचे की ते युनिक्सवर कसे करता येते यासारखेच असते. अनुप्रयोगास शून्य CPU वेळ वाटप केला गेला आहे आणि प्रक्रिया फक्त मेमरीमध्ये बसली आहे, सर्व संसाधने वाटप केली गेली आहेत. म्हणून मला दोनदा होम दाबावे लागले आणि ते हटविण्यासाठी अनुप्रयोग ताबडतोब थांबवावा लागला. तर याचा अर्थ असा आहे की खालच्या लपविलेल्या शीटमध्ये ऍप्लिकेशन आयकॉन असला तरीही, ॲप अजूनही खूप पूर्वी (10 मिनिटांनंतर) बंद आहे?
तळाच्या सूचीमध्ये, अगदी अलीकडे उघडलेले अनुप्रयोग आहेत, ज्याद्वारे त्यापैकी काही अद्याप चालू शकतात, काही निलंबित केले गेले आहेत आणि काही पूर्णपणे संपुष्टात आले आहेत. सूचीमधून अर्ज मॅन्युअली काढून टाकल्याने असा "साइड इफेक्ट" होतो की तो चालू (किंवा निलंबित) झाल्यास तो बंद केला जाईल.
ॲप्लिकेशनला त्या 10 अतिरिक्त मिनिटांबद्दल स्वतःला सांगावे लागेल आणि ते मिळतील याची खात्री नाही.
बरं, सूचीमधून अनुप्रयोग बंद करण्याचा माझा ध्यास सुटला नाही (त्याने चुकून संसाधने खाल्ल्यास काय होईल, बरोबर? :-D)
माझी समजूत अशी आहे की 10 मिनिटे हे ॲप्ससाठी आहेत ज्यांना पार्श्वभूमीत कार्य करणे आवश्यक आहे आणि ते "स्काइप, GPS आणि संगीत प्लेबॅक" श्रेणीमध्ये येत नाहीत. इतर अनुप्रयोग निलंबित मोडवर स्विच करतात आणि मेमरी इतर गोष्टींसाठी आवश्यक होईपर्यंत मेमरीमध्ये राहतात.
निलंबित मोडचा फायदा आहे की जर तुम्हाला ॲप मारण्याची गरज असेल तर तुम्ही त्याचा डेटा गमावणार नाही, सस्पेंडवर स्विच करण्याच्या क्षणी सर्वकाही जतन केले जाईल.
किंवा, उदा. प्लेबॅकच्या बाबतीत, bg/fg कमांडच्या समतुल्य
आणि कितीही वेळ बॅकग्राउंडमध्ये चालू असलेल्या प्लेअर किंवा इतर ॲप्लिकेशन्सबद्दल काय? म्हणजे, मी विकसक म्हणून "निवड" करू शकतो, किंवा हे ऍपलने कसे तरी मंजूर केले पाहिजे?
अनुप्रयोग खरोखर अमर्यादित वेळेसाठी पार्श्वभूमीत चालण्यासाठी, त्याने खालीलपैकी एक क्रिया (नोंदणी) करणे आवश्यक आहे:
- स्थान सेवा (GPS) वापरा
- पार्श्वभूमीत संगीत प्ले करा
- VOIP वापरा (व्हॉईस ओव्हर आयपी)
शीर्षकानुसार (हुड अंतर्गत एक नजर), मला लेखात तांत्रिक तपशीलांसह काहीसे अधिक विस्तृत स्पष्टीकरण असावे अशी अपेक्षा होती. हे लेखाच्या पेरेक्ससारखे दिसते. जर ते पेरेक्स असेल, तर सिक्वेल कधी आहे? तुम्हाला परतावा मिळेल का? :-)
आणि तुम्हाला अधिक तपशीलवार काय जाणून घ्यायचे आहे?
शीर्षकातील "अंडर द हूड" असलेल्या लेखातून, मला तपशीलवार तांत्रिक वर्णनाची अपेक्षा आहे (लेखक विश्लेषण करू शकतो, उदाहरणार्थ, ऍप्लिकेशन स्विच करताना ओव्हरहेड, किंवा सिस्टम संसाधनांमध्ये एकाचवेळी प्रवेश कसा हाताळला जातो), इतर मॉडेलशी तुलना (उदाहरणार्थ, जेलब्रोकन आयफोनसह). काही मोजमापांसह त्याचा बॅकअप घेणे आदर्श आहे. या अतिशय वरवरच्या वर्णनापेक्षा शीर्षकात "अंडर द हुड" असलेल्या लेखाकडून मला अधिक अपेक्षा होती.
असा कोणताही ICQ क्लायंट आहे का जो स्काईप सारख्या पार्श्वभूमीत सतत चालतो आणि कनेक्शन सोडत नाही?
ऍप्लिकेशनला सस्पेंड मोडमध्ये जाण्यासाठी 10 सेकंद आहेत, 10 मिनिटे नाहीत... आणि या प्रक्रियेदरम्यान, काही भाग बॅकएंड सेवांवर "हँग" होऊ शकतात किंवा नसू शकतात, त्यापैकी काही आधीच वर सूचीबद्ध केले गेले आहेत - याला ऍपल "स्मार्ट" म्हणतात "मल्टीटास्किंग.... त्यानंतर सिस्टमने तिला गोळ्या झाडल्या
एखादी गोष्ट डाउनलोड, अपलोड किंवा प्रक्रिया करत असल्यास अनुप्रयोगास अतिरिक्त वेळ लागेल. याचा GPS, VoIP किंवा प्ले म्युझिकशी काहीही संबंध नाही, जे अमर्यादित काळासाठी मिनिमलिस्ट मोडमध्ये चालते.