Të gjithë e dimë mësimin "multitasking = aftësia për të kryer disa procese në të njëjtën kohë". Ne e përdorim atë në kompjuterët tanë pa qenë veçanërisht të vetëdijshëm për praninë e tij. Kalimi ndërmjet aplikacioneve ose dritareve të një aplikacioni bëhet (për ne) në kohë reale dhe ne e marrim si të mirëqenë këtë aftësi të sistemit operativ.
Detyra e ndryshme
Sistemi operativ e shpërndan procesorin për të gjitha aplikacionet në intervale të vogla kohore. Këto periudha kohore janë aq të vogla sa nuk mund t'i vëmë re, kështu që duket sikur të gjitha aplikacionet përdorin procesorin në të njëjtën kohë. Mund të mendojmë kështu multitasking në iOS 4 funksionon saktësisht njësoj. nuk është kështu. Arsyeja kryesore është sigurisht kapaciteti i baterisë. Nëse të gjitha aplikacionet do të liheshin vërtet të funksionojnë në sfond, ndoshta do të na duhej të kërkonim një prizë brenda disa orësh.
Shumica e aplikacioneve të përputhshme me iOS 4 vendosen në "modalitetin e pezulluar" ose vendosen në gjumë pasi shtypni butonin Home. Një analogji mund të jetë mbyllja e kapakut të një laptopi, i cili menjëherë kalon në modalitetin e gjumit. Pas hapjes së kapakut, laptopi zgjohet dhe gjithçka është saktësisht në të njëjtën gjendje si përpara mbylljes së kapakut. Për më tepër, ka aplikacione ku shtypja e butonit Home shkakton përfundimin e tyre. Dhe me këtë nënkuptojmë një përfundim të vërtetë. Zhvilluesit kanë një zgjedhje se cilën nga këto metoda të përdorin.
Por ka një kategori tjetër aplikacionesh. Këto janë aplikacionet që funksionojnë realisht në sfond, edhe pse jeni duke bërë diçka krejtësisht të ndryshme në iDevice. Skype është një shembull i mirë sepse ka nevojë për një lidhje të vazhdueshme interneti. Shembuj të tjerë do të ishin aplikacionet që luajnë muzikë në sfond (Pandora) ose aplikacionet që kërkojnë përdorim të vazhdueshëm të GPS. Po, këto aplikacione e shkarkojnë baterinë tuaj edhe kur funksionojnë në sfond.
Flini apo qëlloni?
Disa aplikacione të pajtueshme me iOS 4, të cilat duhet të vendosen në gjumë (të vendosen në "modalitetin e pezulluar") pasi të shtypni butonin Home, vazhdojnë të funksionojnë në sfond. Apple u dha zhvilluesve saktësisht dhjetë minuta që aplikacioni të përfundonte detyrën e tij, çfarëdo qoftë ajo. Le të themi se po shkarkoni një skedar në GoodReader. Papritur dikush dëshiron t'ju telefonojë dhe ju thjesht duhet ta pranoni atë thirrje të rëndësishme. Telefonata nuk zgjati më shumë se dhjetë minuta, do të ktheheni në aplikacionin GoodReader. Skedari mund të jetë shkarkuar tashmë ose është ende duke u shkarkuar. Po sikur telefonata të zgjasë më shumë se dhjetë minuta? Aplikacioni, në rastin tonë GoodReader, do të duhet të ndalojë aktivitetin e tij dhe t'i tregojë iOS se mund të vendoset në gjumë. Nëse nuk e bën, ajo do të mbyllet pa mëshirë nga vetë iOS.
Tani e dini ndryshimin midis kryerjes së shumë detyrave "mobile" dhe "desktop". Ndërsa rrjedhshmëria dhe shpejtësia e kalimit ndërmjet aplikacioneve janë të rëndësishme për një kompjuter, jetëgjatësia e baterisë është gjithmonë gjëja më e rëndësishme për pajisjet celulare. Multitasking gjithashtu duhej t'i përshtatej këtij fakti. Prandaj, pasi të keni lexuar këtë artikull, nëse shtypni dy herë butonin Home, nuk do të shihni më "shiritin e aplikacioneve që funksionojnë në sfond", por në thelb vetëm "listën e aplikacioneve të përdorura së fundmi".
Autor: Daniel Hrushkaburimi: onemoretap.com
hmm, interesante :) Gjithmonë kam menduar se ishte gjithmonë e ngjashme me mënyrën se si mund të bëhet në Unix. Që aplikacionit i është ndarë zero koha e CPU-së dhe procesi thjesht qëndron në memorie, të gjitha burimet janë ndarë. kështu që më duhej të shtypja dy herë në shtëpi dhe të ndaloja menjëherë aplikacionin për ta fshirë. Pra, a do të thotë kjo që edhe nëse ka një ikonë aplikacioni në fletën e poshtme të fshehur, aplikacioni është ende i mbyllur shumë kohë më parë (pas 10 minutash)?
Në listën e fundit, ka thjesht aplikacionet më të hapura së fundmi, ku disa prej tyre mund të ekzekutohen ende, disa janë pezulluar dhe disa janë ndërprerë plotësisht. Heqja manuale e aplikacionit nga lista ka "efektin anësor" që nëse ndodh të funksionojë (ose pezullohet) do të ndërpritet.
Aplikacioni duhet të tregojë vetë për ato 10 minuta shtesë dhe nuk është e garantuar se do t'i marrë ato.
Epo, kjo nuk më hoqi fiksimin për mbylljen e aplikacionit nga lista (po sikur aksidentalisht të ha burime, apo jo? :-D)
Kuptimi im është se 10 minutat janë për aplikacionet që duhet të funksionojnë në sfond dhe nuk bëjnë pjesë në kategorinë "Skype, GPS dhe riprodhimi i muzikës". Aplikacionet e tjera kalojnë në modalitetin e pezulluar dhe qëndrojnë në memorie derisa kujtesa të nevojitet për gjëra të tjera.
Modaliteti i pezulluar ka avantazhin që nëse keni nevojë të hiqni aplikacionin, nuk do të humbni të dhënat e tij, gjithçka do të ruhet në momentin e kalimit në pezullim.
ose, në rastin e riprodhimit, ekuivalenti i komandës bg / fg
Po në lidhje me luajtësin ose aplikacionet e tjera që funksionojnë në sfond për çdo kohë? Dua të them, a mund të "zgjedh" si zhvillues, apo kjo duhet të miratohet disi nga Apple?
Në mënyrë që aplikacioni të funksionojë vërtet në sfond për një kohë të pakufizuar, ai duhet të bëjë (regjistrojë) një nga veprimet e mëposhtme:
– Përdorni shërbimet e vendndodhjes (GPS)
– Luaj muzikë në sfond
– Përdorni VOIP (Zëri mbi IP)
Sipas titullit (një vështrim nën kapuç), prisja që artikulli të përmbante një shpjegim disi më të gjerë me detaje teknike. Kjo duket më shumë si një perex për artikullin. Nëse është perex, kur është vazhdimi? Mund të merrni një rimbursim? :-)
dhe çfarë dëshironi të dini më në detaje?
Nga një artikull me "nën kapuç" në titull, do të prisja një përshkrim teknik të detajuar (autori mund të analizojë, për shembull, shpenzimet e përgjithshme kur ndërron aplikacionet, ose si trajtohet qasja e njëkohshme në burimet e sistemit), një krahasim me modelet e tjera (për shembull, me një iPhone të jailbroken). Është ideale për ta mbështetur atë me disa matje. Thjesht prisja shumë më tepër nga një artikull që ka "nën kapuç" në titull sesa ky përshkrim shumë sipërfaqësor.
A ka ndonjë klient icq që funksionon vazhdimisht në sfond si skype dhe nuk e heq lidhjen?
aplikacioni ka 10 sekonda për të kaluar në modalitetin e pezullimit, jo 10 minuta... dhe gjatë këtij procesi, disa pjesë mund ose nuk mund të "varen" në shërbimet e backend-it, disa prej të cilave tashmë janë renditur më lart - kjo është ajo që Apple e quan "të zgjuar". " multitasking.... atëherë sistemi e rrëzoi atë
Aplikacioni mund të kërkojë kohë shtesë nëse diçka po shkarkohet, ngarkohet ose përpunohet. Nuk ka të bëjë me GPS, VoIP apo luajtjen e muzikës, të cilat funksionojnë në modalitetin minimalist për një kohë të pakufizuar.