Kita semua tahu pelajaran "berbilang tugas = keupayaan untuk melaksanakan beberapa proses pada masa yang sama". Kami menggunakannya dalam komputer kami tanpa menyedari kehadirannya. Bertukar antara aplikasi atau tetingkap satu aplikasi berlaku (untuk kami) dalam masa nyata dan kami mengambil mudah keupayaan sistem pengendalian ini.
Tugas berbeza
Sistem pengendalian memperuntukkan pemproses kepada semua aplikasi dalam selang masa yang kecil. Tempoh masa ini sangat kecil sehingga kita tidak dapat melihatnya, jadi nampaknya semua aplikasi menggunakan pemproses pada masa yang sama. Kita mungkin fikir begitu berbilang tugas dalam iOS 4 berfungsi sama. Ia tidak begitu. Sebab utama sudah tentu kapasiti bateri. Jika semua aplikasi benar-benar dibiarkan berjalan di latar belakang, kita mungkin perlu mencari soket dalam beberapa jam.
Kebanyakan aplikasi yang serasi dengan iOS 4 dimasukkan ke dalam "mod digantung" atau dimatikan selepas menekan butang Utama. Analogi mungkin menutup penutup komputer riba, yang segera masuk ke mod tidur. Selepas membuka penutup, komputer riba bangun dan semuanya berada dalam keadaan yang sama seperti sebelum penutup ditutup. Tambahan pula, terdapat aplikasi yang menekan butang Laman Utama menyebabkannya berakhir. Dan yang kami maksudkan adalah penamatan sebenar. Pembangun mempunyai pilihan kaedah yang mana untuk digunakan.
Tetapi terdapat satu lagi kategori aplikasi. Ini ialah apl yang benar-benar berjalan di latar belakang, walaupun anda melakukan sesuatu yang berbeza sama sekali pada iDevice anda. Skype adalah contoh yang baik kerana ia memerlukan sambungan internet yang berterusan. Contoh lain boleh menjadi aplikasi memainkan muzik latar belakang (Pandora) atau aplikasi yang memerlukan penggunaan berterusan GPS. Ya, apl ini menghabiskan bateri anda walaupun semasa berjalan di latar belakang.
Tidur atau tembak jatuh?
Aplikasi tertentu yang serasi dengan iOS 4, yang harus dimatikan (dimasukkan ke dalam "mod digantung") selepas menekan butang Laman Utama, terus berjalan di latar belakang. Apple memberi pemaju tepat sepuluh minit untuk apl itu menyelesaikan tugasnya, walau apa pun ia. Katakan anda sedang memuat turun fail dalam GoodReader. Tiba-tiba seseorang ingin menghubungi anda dan anda hanya perlu menerima panggilan penting itu. Panggilan tidak bertahan lebih daripada sepuluh minit, anda akan kembali ke aplikasi GoodReader. Fail mungkin sudah dimuat turun atau masih dimuat turun. Bagaimana jika panggilan mengambil masa lebih daripada sepuluh minit? Aplikasi, dalam kes kami GoodReader, perlu menghentikan aktivitinya dan memberitahu iOS bahawa ia boleh ditidurkan. Jika dia tidak melakukannya, dia akan ditamatkan tanpa belas kasihan oleh iOS sendiri.
Kini anda tahu perbezaan antara "mudah alih" dan "desktop" berbilang tugas. Walaupun kecairan dan kelajuan bertukar antara aplikasi adalah penting untuk komputer, hayat bateri sentiasa menjadi perkara yang paling penting untuk peranti mudah alih. Multitasking juga terpaksa disesuaikan dengan fakta ini. Oleh itu, selepas membaca artikel ini, jika anda menekan butang Laman Utama dua kali, anda tidak akan melihat "bar aplikasi berjalan di latar belakang", tetapi pada asasnya hanya "senarai aplikasi yang digunakan baru-baru ini".
Pengarang: Daniel HruškaSumber: onemoretap.com
hmm, menarik :) Saya sentiasa berfikir bahawa ia sentiasa serupa dengan cara ia boleh dilakukan pada Unix. Bahawa aplikasi telah diperuntukkan sifar masa CPU dan proses itu hanya duduk dalam ingatan, semua sumber telah diperuntukkan. jadi saya terpaksa menekan rumah dua kali dan segera menghentikan aplikasi untuk memadamkannya. Jadi adakah ini bermakna walaupun terdapat ikon aplikasi dalam helaian tersembunyi yang lebih rendah, apl itu masih ditutup lama dahulu (selepas 10 minit)?
Dalam senarai bawah, terdapat hanya aplikasi yang paling baru dibuka, di mana sebahagian daripadanya masih boleh dijalankan, ada yang digantung dan ada yang ditamatkan sepenuhnya. Mengalih keluar aplikasi secara manual daripada senarai mempunyai "kesan sampingan" yang jika ia berjalan (atau digantung) ia akan ditamatkan.
Aplikasi perlu memberitahu sendiri tentang 10 minit tambahan itu, dan ia tidak dijamin bahawa ia akan mendapatnya.
Nah, itu tidak menghilangkan obsesi saya untuk menutup aplikasi dari senarai (bagaimana jika ia secara tidak sengaja memakan sumber, bukan? :-D)
Pemahaman saya ialah 10 minit itu adalah untuk apl yang perlu berfungsi di latar belakang dan tidak termasuk dalam kategori "skype, GPS dan main balik muzik". Aplikasi lain bertukar kepada mod yang digantung dan kekal dalam ingatan sehingga memori diperlukan untuk perkara lain.
Mod yang digantung mempunyai kelebihan bahawa jika anda perlu mematikan apl, anda tidak akan kehilangan datanya, semuanya akan disimpan pada saat bertukar kepada digantung.
atau, dalam kes cth. main balik, setara dengan perintah bg / fg
Dan bagaimana pula dengan pemain atau aplikasi lain yang berjalan di latar belakang untuk sebarang tempoh masa? Maksud saya, adakah saya boleh "memilih" sebagai pembangun, atau adakah ini perlu diluluskan oleh Apple entah bagaimana?
Agar aplikasi benar-benar berjalan di latar belakang untuk masa yang tidak terhad, ia mesti melakukan (mendaftar) salah satu daripada tindakan berikut:
– Gunakan perkhidmatan Lokasi (GPS)
– Mainkan muzik di latar belakang
– Gunakan VOIP (Voice over IP)
Mengikut tajuk (lihat di bawah tudung), saya menjangkakan artikel itu mengandungi penjelasan yang agak meluas dengan butiran teknikal. Ini kelihatan lebih seperti perex kepada artikel itu. Kalau perex, bila sekuelnya? Bolehkah anda mendapatkan bayaran balik? :-)
dan apakah yang anda ingin ketahui dengan lebih terperinci?
Daripada artikel dengan tajuk "di bawah tudung", saya menjangkakan penerangan teknikal terperinci (pengarang boleh menganalisis, contohnya, overhed apabila menukar aplikasi, atau cara akses serentak kepada sumber sistem dikendalikan), perbandingan dengan model lain (contohnya, dengan iPhone jailbreak). Ia sesuai untuk menyandarkannya dengan beberapa ukuran. Saya hanya mengharapkan lebih banyak daripada artikel yang mempunyai "di bawah tudung" dalam tajuknya daripada penerangan yang sangat dangkal ini.
Adakah terdapat pelanggan icq yang berjalan secara berterusan di latar belakang seperti skype dan tidak memutuskan sambungan?
aplikasi mempunyai 10 saat untuk masuk ke mod penggantungan, bukan 10 minit... dan semasa proses ini, beberapa bahagian mungkin atau mungkin tidak "tergantung" pada perkhidmatan hujung belakang, beberapa daripadanya telah disenaraikan di atas - itulah yang Apple panggil "pintar "berbilang tugas.... kemudian sistem menembaknya
Aplikasi mungkin memerlukan masa tambahan jika sesuatu sedang dimuat turun, dimuat naik atau diproses. Ia tiada kaitan dengan GPS, VoIP atau memainkan muzik, yang berjalan dalam mod minimalis untuk masa yang tidak terhad.