Küsimus:
Mis on rakenduste multitegumtöötluse Androidi ja iPhone'i rakenduste peamised erinevused?
rchern
2010-07-15 00:19:32 UTC
view on stackexchange narkive permalink

Millised on Androidi ja iPhone'i rakenduste tasemel multitegumtöötluse peamised erinevused?

(Ärgem muutkem sellest palun subjektiivset fännide argumenti?)

Kolm vastused:
user28
2010-07-15 00:54:55 UTC
view on stackexchange narkive permalink

See pole vastus teie küsimusele, kuid tasub selgitada, et mõlemad operatsioonisüsteemid on kapoti all täielikult mitme ülesandega [1] (niivõrd kui nad suudavad ja käitavad mitut protsessi).

Teie küsimus on selgelt seotud rakendustasandi multitegumtöötlusega ("kas ma saan ühe rakenduse teise kasutamise ajal töötama jätta?"), mis on selle termini suhteliselt uus kasutus ega ole alati täpselt määratletud, isegi kui sellel on mõned ilmsed näited ( nagu Pandora kuulamine e-posti lugemise ajal). Täpsemalt ei pea paljud rakendused taustal töötama, et end kasutajale esitleda nii, nagu nad poleks kunagi töötamist lõpetanud, kui nad oma oleku salvestavad / taastavad. Samuti ei pea taustal pidevalt töötama rakendused, mis peavad tegema perioodilisi toiminguid (nt posti kontrollimine või äratuste ilmumine) neile võib OS aeg-ajalt tugineda. Suur probleem on tavaliselt rakendused, mis vajavad taustal pidevat protsessorit, näiteks Pandora.

Üldiselt on Apple pidevalt töötavate taustarakenduste tõkestamiseks või ennetamiseks palju rohkem tööd teinud, samas kui Android näib sellele avatum. . Kuid need lähenevad, kuna Apple lubab rakendustel nagu Pandora taustal töötada ja Android pakub rikkalikumaid tööriistu tarbetute taustaülesannete takistamiseks, kui piisaks küsitlusest või salvestatud olekust.

[1] http: / /et.wikipedia.org/wiki/arvuti_multitasking

Hea tähelepanek. Ma redigeerin oma küsimust.
Tom Wright
2010-07-15 00:26:36 UTC
view on stackexchange narkive permalink

Niipalju kui oskan öelda.

IPhone'i multitegumtöötlus on palju piiratum. Mitme ülesandega tegevus peab olema üks järgmistest:

  • taustheli
  • VoIP
  • tausta asukoht
  • tõukemärguanded
  • kohalikud teatised
  • ülesande täitmine
  • kiire rakenduse vahetamine

[aitäh Gizmodo!]

Android võimaldab seevastu tegelikku multitegumtöötlust sarnaselt arvutiga.

Enne kui mind süüdistatakse Androidi fännina, las ma seletan midagi. IPhone'i mitme ülesandega mudel on enamikus olukordades enam kui piisav ja väldib paljusid probleeme (nt mälupuudust), mis kaasnevad Android-süsteemiga.

Tõeline multitegumtöötlus? Ma ei usu, et WebOS või Symbian inimesed sellega nõustuksid ...
ClashTheBunny
2010-07-15 01:19:06 UTC
view on stackexchange narkive permalink

Androidil on rakendustaseme multitegumtöötluse kontseptsioon erinev kui arvutil. Andmete, andmete vaatamise ja andmetega töötamise vahel on rohkem lahtiühendusi.

Korraga saab olla avatud ainult üks rakenduse vaade, kuid andmetega saab toimingu teha tagaplaanile minnes. Seetõttu on rakenduste arendajatel raske rakenduste vahel vahetamisel, rakenduste sulgemisel ja uute rakenduste käivitamisel tunda end töölauana. Mõnikord tundub rakenduse tapmine võimatu, kuid mõnikord tundub ka, et võimatu on ühele ülesandele üle minna ja uuesti tagasi minna. See sõltub sellest, kuidas rakenduse arendaja seda tegi.

Teil võib korraga käia nii palju taustaprotsesse ja need on ajastatud nagu töölauarakendused. Linuxi kernel valib, kuidas tähtsuse järjekorda seada, millised saavad mälu ja protsessori ressursse. Kui telefon otsustab, et mälu on otsas, hakkab see asju tapma, et mälu juurde saada. Seda tehakse teisiti kui Linuxi või enamiku teiste OS-ide tavapärane käitumine.

Programmi andmed on alati saadaval. Kuni rakendusel on andmetele juurdepääsemiseks õigused, on see saadaval. Selleks, et see oleks saadaval, pole vaja taustal töötavat teenust.

Apple'il on väga spetsiifilised viisid, kuidas saate mitut toimingut teha. Need on alamhulk viise, mida Android võimaldab. Taustal saavad töötada ainult teatud tüüpi rakendused ja need tuleb selleks spetsiaalselt programmeerida.

Töölaud erineb mõlemast neist asjadest. Iga rakenduse vaade, andmed ja andmetöötluse loogika on sageli lukus. Ma ütleksin, et WebOS, Symbian ja Maemo / Meego on selle näited mobiilseadmetes. Kui rakendus paljastab oma andmete ja tausta töötlemise muudele vaadetele, on see tavaliselt väga eriline rakendus.

Pange tähele, et Linuxil on kõigis kehastustes OOM-i tapja, see pole Android-spetsiifiline. Kuid enne, kui see asju tapma hakkab, peate arvutis kulutama nii oma ruumi kui ka füüsilise mälu.
Mitte tegelikult, vaadake: http: //wiki.kldp.org/wiki.php/AndroidPortingOnRealTarget#s-3.1.5. See on üks raskemaid asju, kui Android ei ole tegelikult Linux, kuna see vajab käivitamiseks seda kernelisse paigatud . Proovige käivitada Dalvik aktsiatuumaga ja see takistab teil jätkata.


See küsimus ja vastus tõlgiti automaatselt inglise keelest.Algne sisu on saadaval stackexchange-is, mida täname cc by-sa 2.0-litsentsi eest, mille all seda levitatakse.
Loading...