Сви знамо лекцију „мултитаскинг = способност обављања више процеса у исто време“. Користимо га у нашим рачунарима, а да нисмо посебно свесни његовог присуства. Пребацивање између апликација или прозора једне апликације одвија се (за нас) у реалном времену и ову способност оперативног система узимамо здраво за готово.
Задатак другачији
Оперативни систем додељује процесор свим апликацијама у малим временским интервалима. Ови временски периоди су толико мали да их не можемо приметити, па изгледа као да све апликације користе процесор у исто време. Можда тако мислимо мултитаскинг у иОС-у 4 ради потпуно исто. То није тако. Главни разлог је наравно капацитет батерије. Да су све апликације заиста остављене да раде у позадини, вероватно бисмо морали да тражимо сокет за неколико сати.
Већина апликација компатибилних са иОС 4 се ставља у "суспендовани режим" или се ставља у стање спавања након притиска на дугме Хоме. Аналогија би могла бити затварање поклопца лаптопа, који одмах прелази у режим спавања. Након отварања поклопца, лаптоп се буди и све је у потпуно истом стању као пре затварања поклопца. Штавише, постоје апликације где се притиском на дугме Хоме завршавају. И под тим подразумевамо прави прекид. Програмери имају избор који ће од ових метода користити.
Али постоји још једна категорија апликација. Ово су апликације које заиста раде у позадини, иако радите нешто потпуно другачије на свом иДевице-у. Скипе је добар пример јер му је потребна стална интернет веза. Други примери могу бити апликације које пуштају музику у позадини (Пандора) или апликације које захтевају сталну употребу ГПС-а. Да, ове апликације троше батерију чак и када раде у позадини.
Спавати или оборити?
Одређене апликације компатибилне са иОС 4, које треба ставити у стање мировања (пребацити у "суспендовани режим") након притиска на дугме Хоме, настављају да раде у позадини. Аппле је дао програмерима тачно десет минута да апликација заврши свој задатак, шта год да је. Рецимо да преузимате датотеку у ГоодРеадер-у. Одједном неко жели да вас позове и ви само морате да прихватите тај важан позив. Позив није трајао више од десет минута, вратићете се у апликацију ГоодРеадер. Датотека је можда већ преузета или се још увек преузима. Шта ако позив траје више од десет минута? Апликација, у нашем случају ГоодРеадер, мораће да заустави своју активност и каже иОС-у да се може ставити у стање мировања. Ако то не учини, сам иОС ће је немилосрдно укинути.
Сада знате разлику између "мобилног" и "десктоп" мултитаскинга. Док су флуидност и брзина пребацивања између апликација важни за рачунар, трајање батерије је увек најважнија ствар за мобилне уређаје. Мултитаскинг је такође морао бити прилагођен овој чињеници. Стога, након што прочитате овај чланак, ако двапут притиснете дугме Почетна, више нећете видети „траку апликација које раде у позадини“, већ у суштини само „листу недавно коришћених апликација“.
Аутор: Даниел ХрушкаИзвор: онеморетап.цом
хмм, интересантно :) Увек сам мислио да је увек било слично како се то може урадити на Унику. Пошто је апликацији додељено нула ЦПУ времена и процес само седи у меморији, сви ресурси су додељени. па сам морао двапут да притиснем кући и одмах зауставим апликацију да је избришем. Дакле, да ли то значи да чак и ако постоји икона апликације у доњем скривеном листу, апликација је и даље затворена давно (после 10 минута)?
У доњој листи су једноставно најновије отворене апликације, при чему неке од њих и даље могу да раде, неке су суспендоване, а неке потпуно угашене. Ручно уклањање апликације са листе има „нуспојава“ да ће, ако се деси да ради (или буде суспендована), бити прекинута.
Апликација мора сама да каже за тих 10 додатних минута и није гарантовано да ће их добити.
Па, то се није ослободило моје опсесије затварањем апликације са листе (шта ако случајно поједе ресурсе, зар не? :-Д)
Колико сам схватио, 10 минута је за апликације које морају да раде у позадини и које не спадају у категорију „скајп, ГПС и репродукција музике“. Друге апликације прелазе у суспендовани режим и остају у меморији док меморија не буде потребна за друге ствари.
Суспендовани режим има предност у томе што ако треба да убијете апликацију, нећете изгубити њене податке, све ће бити сачувано у тренутку преласка на суспендовану.
или, у случају нпр. репродукције, еквивалент команди бг / фг
А шта је са плејером или другим апликацијама које раде у позадини током било којег времена? Мислим, да ли могу да "изаберем" као програмер, или ово мора некако да одобри Аппле?
Да би апликација заиста радила у позадини неограничено време, мора да уради (региструје) једну од следећих радњи:
– Користите услуге локације (ГПС)
– Пустите музику у позадини
– Користите ВОИП (Воице овер ИП)
Према наслову (поглед испод хаубе), очекивао сам да чланак садржи нешто опширније објашњење са техничким детаљима. Ово више личи на перекс на чланак. Ако је перекс, када је наставак? Можете ли добити повраћај новца? :-)
а шта бисте желели да знате детаљније?
Од чланка са „испод хаубе“ у наслову очекивао бих детаљан технички опис (аутор би могао да анализира нпр. прекомерне трошкове приликом пребацивања апликација или како се решава истовремени приступ системским ресурсима), поређење са другим моделима. (на пример, са разбијеним иПхоне-ом). Идеално је да то поткрепите неким мерењима. Једноставно сам очекивао много више од чланка који у наслову има „испод хаубе“ од овог веома површног описа.
Да ли постоји неки ицк клијент који ради непрекидно у позадини као што је Скипе и не прекида везу?
апликација има 10 секунди да пређе у режим суспендовања, а не 10 минута... и током овог процеса, неки делови могу или не морају да „висе“ на позадинским услугама, од којих су неки већ наведени изнад – то је оно што Аппле назива „паметним“ „мултитаскинг.... онда ју је систем оборио
Апликација може захтевати додатно време ако се нешто преузима, отпрема или обрађује. То нема никакве везе са ГПС-ом, ВоИП-ом или пуштањем музике, који раде у минималистичком режиму неограничено време.