Hamımız "çox tapşırıq = eyni vaxtda bir neçə prosesi yerinə yetirmək bacarığı" dərsini bilirik. Biz onun varlığından xüsusilə xəbərdar olmadan kompüterlərimizdə istifadə edirik. Tətbiqlər və ya bir proqramın pəncərələri arasında keçid real vaxt rejimində (bizim üçün) baş verir və biz əməliyyat sisteminin bu imkanını təbii qəbul edirik.
Fərqli tapşırıq
Əməliyyat sistemi prosessoru kiçik vaxt intervallarında bütün proqramlara ayırır. Bu müddətlər o qədər kiçikdir ki, biz onları fərq edə bilmirik, ona görə də sanki bütün proqramlar prosessordan eyni vaxtda istifadə edir. Biz belə düşünə bilərik iOS 4-də multitasking tam eyni işləyir. Belə deyil. Əsas səbəb, əlbəttə ki, batareyanın tutumudur. Əgər bütün proqramlar həqiqətən arxa planda işlək vəziyyətdə qalsaydı, yəqin ki, bir neçə saatdan sonra rozetka axtarmalı olardıq.
İOS 4-ə uyğun gələn əksər proqramlar Əsas səhifə düyməsini basdıqdan sonra "dayandırılmış rejimə" qoyulur və ya yuxu rejiminə keçir. Bənzətmə, dərhal yuxu rejiminə keçən bir laptopun qapağını bağlamaq ola bilər. Qapağı açdıqdan sonra noutbuk oyanır və hər şey qapaq bağlanmazdan əvvəlki vəziyyətdədir. Bundan əlavə, Home düyməsini basmaqla onların bitməsinə səbəb olan proqramlar var. Və bununla biz real xitam nəzərdə tuturuq. Tərtibatçıların bu üsullardan hansını istifadə etmək seçimi var.
Ancaq tətbiqlərin başqa bir kateqoriyası var. Bunlar, iDevice-də tamamilə fərqli bir şey etdiyinizə baxmayaraq, həqiqətən arxa planda işləyən proqramlardır. Skype yaxşı bir nümunədir, çünki daimi internet bağlantısı lazımdır. Digər misallar fon musiqisini ifa edən proqramlar (Pandora) və ya daimi GPS istifadəsini tələb edən proqramlar ola bilər. Bəli, bu proqramlar hətta arxa fonda işləyərkən də batareyanızı boşaldır.
Yatmaq və ya vurmaq?
Əsas səhifə düyməsini basdıqdan sonra yuxu rejiminə ("dayandırılmış rejimə" qoyulmalı) iOS 4 ilə uyğun gələn bəzi proqramlar arxa planda işləməyə davam edir. Apple, nə olursa olsun, proqramın öz tapşırığını yerinə yetirməsi üçün tərtibatçılara düz on dəqiqə vaxt verdi. Tutaq ki, siz GoodReader-də fayl endirirsiniz. Birdən kimsə sizə zəng etmək istəyir və siz sadəcə bu vacib zəngi qəbul etməlisiniz. Zəng on dəqiqədən çox çəkmədi, siz GoodReader tətbiqinə qayıdacaqsınız. Fayl artıq endirilmiş və ya hələ də endirilir. Zəng on dəqiqədən çox çəkirsə? Tətbiq, bizim vəziyyətimizdə GoodReader, fəaliyyətini dayandırmalı və iOS-a onu yuxu rejiminə qoymaq olar. Bunu etməsə, o, iOS-un özü tərəfindən amansızcasına ləğv ediləcək.
İndi siz "mobil" və "masaüstü" multitasking arasındakı fərqi bilirsiniz. Bir kompüter üçün axıcılıq və proqramlar arasında keçid sürəti vacib olsa da, mobil cihazlar üçün batareyanın ömrü həmişə ən vacib şeydir. Multitasking də bu fakta uyğunlaşdırılmalı idi. Buna görə də, bu məqaləni oxuduqdan sonra Home düyməsini iki dəfə basarsanız, artıq "arxa fonda işləyən proqramlar panelini" deyil, mahiyyətcə yalnız "son istifadə olunan proqramların siyahısı" nı görəcəksiniz.
Müəllif: Daniel HruškaMənbə: onemoretap.com
hmm, maraqlıdır :) Mən həmişə düşünürdüm ki, bu, həmişə Unix-də necə edilə biləcəyinə bənzəyir. Tətbiqə sıfır CPU vaxtı ayrılması və prosesin sadəcə yaddaşda qalması üçün bütün resurslar ayrılmışdır. ona görə də onu silmək üçün evə iki dəfə basmalı və dərhal proqramı dayandırmalı oldum. Bu o deməkdir ki, aşağı gizli vərəqdə proqram simvolu olsa belə, proqram hələ də çoxdan bağlanıb (10 dəqiqədən sonra)?
Aşağı siyahıda sadəcə olaraq ən son açılan proqramlar var ki, onların bəziləri hələ də işləyə bilər, bəziləri dayandırılır, bəziləri isə tamamilə dayandırılır. Tətbiqin siyahıdan əl ilə çıxarılması "yan təsirə" malikdir ki, əgər o, işə düşərsə (və ya dayandırılsa) onun fəaliyyəti dayandırılacaq.
Tətbiq bu əlavə 10 dəqiqə haqqında özünə məlumat verməlidir və onları əldə edəcəyinə zəmanət verilmir.
Yaxşı, bu, tətbiqi siyahıdan bağlamaq vəsiyyətimdən qurtulmadı (təsadüfən resursları yeyirsə nə olacaq? :-D)
Mənim başa düşdüyüm odur ki, 10 dəqiqə fonda işləməli olan və "skype, GPS və musiqi çalma" kateqoriyasına aid olmayan proqramlar üçündür. Digər proqramlar dayandırılmış rejimə keçir və yaddaş başqa şeylər üçün lazım olana qədər yaddaşda qalır.
Dayandırılmış rejimin üstünlüyü ondan ibarətdir ki, proqramı öldürmək lazımdırsa, siz onun məlumatlarını itirməyəcəksiniz, dayandırılmış rejimə keçid anında hər şey yadda saxlanılacaq.
və ya, məsələn, oxutma zamanı bg / fg əmrinin ekvivalenti
Bəs pleyer və ya hər hansı bir müddət ərzində arxa planda işləyən digər proqramlar haqqında nə demək olar? Demək istəyirəm ki, mən bir tərtibatçı kimi "seçməliyəm" və ya bu, Apple tərəfindən təsdiqlənməlidir?
Tətbiqin qeyri-məhdud müddətə həqiqətən arxa planda işləməsi üçün o, aşağıdakı hərəkətlərdən birini etməlidir (qeydiyyatdan keçirməlidir):
- Məkan xidmətlərindən (GPS) istifadə edin
- Fonda musiqi çalın
– VOIP (IP üzərindən səs) istifadə edin
Başlığa görə (kaputun altına baxış), məqalədə texniki detallarla bir qədər daha geniş izahat olacağını gözləyirdim. Bu, məqaləyə daha çox bənzəyir. Perexdirsə, davamı nə vaxt olacaq? Siz geri ala bilərsiniz? :-)
və nəyi daha ətraflı bilmək istərdiniz?
Başlığında "başlıq altında" olan bir məqalədən mən ətraflı texniki təsvir (müəllif, məsələn, proqramları dəyişdirərkən yerüstü xərcləri və ya sistem resurslarına eyni vaxtda girişin necə idarə olunduğunu təhlil edə bilər), digər modellərlə müqayisə gözləyərdim. (məsələn, jailbroken iPhone ilə). Onu bəzi ölçmələrlə dəstəkləmək idealdır. Mən sadəcə olaraq başlığında "başlıq altında" olan bir məqalədən bu çox səthi təsvirdən daha çox şey gözləyirdim.
Skype kimi arxa planda davamlı işləyən və əlaqəni kəsməyən icq müştəri varmı?
tətbiqin dayandırma rejiminə keçməsi üçün 10 dəqiqə deyil, 10 saniyə var... və bu proses zamanı bəzi hissələr artıq yuxarıda sadalanan backend xidmətlərində "asılacaq" və ya olmaya da bilər - Apple bunu "ağıllı" adlandırır. "çox tapşırıqlı.... sonra sistem onu vurdu
Bir şey endirilir, yüklənir və ya emal edilirsə, tətbiq əlavə vaxt tələb edə bilər. Bunun qeyri-məhdud müddətə minimalist rejimdə işləyən GPS, VoIP və ya musiqi ilə heç bir əlaqəsi yoxdur.