Jawaban yang diberikan akurat, saya hanya ingin mengklarifikasi dari sudut pandang pengembang iOS.
iOS dirancang untuk mengelola sebanyak mungkin hal sehingga Anda (dan pengembang) tidak perlu khawatir. Hasil akhirnya adalah pendekatan yang agak konsisten di seluruh aplikasi, termasuk yang dari Apple (bahkan terkadang Apple sendiri mengambil jalan pintas).
Karena itu, premisnya adalah:
- iOS tahu lebih banyak tentang memori daripada kita. Ia tahu berapa banyak yang dimilikinya, dan berapa yang dibutuhkannya (sampai tingkat tertentu).
- iOS memiliki kontrol penuh atas memori; ia memiliki kata terakhir tentang siapa yang menggunakan apa.
- Jika iOS membutuhkan memori, maka akan menemukannya, dan ini biasanya dilakukan dengan mematikan proses lain yang telah lama tidak digunakan (dan ada banyak aturan di belakang layar, kita tidak tahu semuanya, dan kita tidak benar-benar tahu. khawatir tentang mereka).
- Semua yang Prosesor (CPU) lakukan, membutuhkan energi. Semuanya sepenuhnya. Jangan lupa komputer hanyalah wadah elektron yang sangat kecil yang memindahkannya dalam ruang yang sangat kecil.
- Ketika sebuah aplikasi terbunuh, ada beberapa protokol (kontrak) yang disepakati yang menentukan apa yang perlu dilakukan. iOS menegakkan dan membawa protokol ini. Tetapi pekerjaan harus dilakukan, itu tidak gratis dan tentu saja tidak selalu murah (itu benar-benar tergantung pada apa App).
Setelah mengatakan semua itu, kita mengasumsikan sebagian besar pengguna menutup aplikasi dengan harapan untuk meningkatkan masa pakai baterai, di bawah kesan bahwa, dengan menutup sesuatu, maka lebih sedikit energi yang terbuang untuk menjaga aplikasi ini berjalan.
Yang benar adalah, di iOS, ini hampir tidak pernah terjadi. Saat Anda menekan rumah, aplikasi ditangguhkan dan tidak lagi menggunakan sumber daya yang mungkin dibutuhkan aplikasi lain. Jika aplikasi baru (atau bahkan iOS) membutuhkan memori itu, itu akan mengurusnya sendiri, tetapi hanya jika perlu.
Anda menutup aplikasi berulang-ulang, memaksa iOS untuk membuat tugas yang berpotensi mahal itu benar-benar menurunkan aplikasi, menyimpan statusnya dan yang tidak, dengan masalah tambahan bahwa ketika Anda membuka kembali aplikasi, semua hal itu harus dikembalikan. dan, tergantung pada kerumitan aplikasi, banyak hal harus dibaca dari penyimpanan, naik ke memori utama ponsel, dan sebagainya. Semua pekerjaan ekstra ini, bisa dihindari jika Anda membiarkan aplikasi tetap dalam status "ditangguhkan".
Namun ...
Dalam beberapa kasus (dan mereka jarang tetapi tidak jarang langka), Anda ingin membunuh aplikasi yang mengalami gangguan. Contohnya adalah (tetapi tidak terbatas pada): Aplikasi yang berurusan dengan audio latar belakang, atau layanan asinkron seperti lokasi (tempat aplikasi meminta lokasi dan iOS harus pergi dan bertanya di sekitar tempat itu, misalnya, dengan menembakkan GPS jika diperlukan) , streaming video, dll.
Saya memiliki banyak sekali contoh aplikasi seperti Lyft, United Airlines, bahkan Twitter, yang berakhir dalam keadaan rusak (atau tidak berfungsi dengan baik), baik karena Anda berada di jaringan yang buruk (iOS menjadi sangat buruk di memulihkan dari beberapa jaringan buruk dalam 3-4 rilis terakhir) atau jaringan tidak merespons dengan benar.
Pada waktunya, sebagian besar masalah ini cenderung hilang dan aplikasi mulai bekerja lagi; tetapi jika Anda benar-benar membutuhkan aplikasi untuk bekerja sekarang , maka Anda harus melanjutkan dan membayar harga harus membunuhnya dan memulai kembali dari awal. Anda menggunakan lebih banyak baterai dengan melakukan itu, tetapi, hei, Anda membutuhkannya.
Dan jika ini membingungkan, saya bisa memberi Anda analogi mobil, karena itulah yang cenderung kita lakukan sepanjang waktu.
Analogi Mobil
Saya tahu bahwa teknologi mobil telah maju dan ini bukan lagi contoh yang baik, tetapi bermainlah dengan saya di sini .
Memecat mesin mobil yang digunakan untuk menggunakan lebih banyak bahan bakar daripada hanya pemalasan. Ketika mobil memiliki karburator, bukan injektor, ini bahkan lebih buruk; itu sebabnya mematikan mesin saat Anda berhenti di lampu merah, secara teoritis dapat menggunakan lebih banyak bahan bakar daripada hanya diam selama satu menit. Mobil-mobil baru memiliki mekanisme yang jauh lebih efisien dan dapat menghentikan mesin, tetapi tetap dalam kondisi semi-dimulai (jangan terlalu ke dalam mobil di sini).
Anda menutup aplikasi, sama dengan seseorang mematikan mobil di setiap lampu berhenti. Berbeda dengan membiarkannya diam sampai Anda membutuhkannya lagi, biasanya beberapa detik kemudian.
Analogi ini tidak sempurna, karena kenyataannya, mobil-mobil idle masih menggunakan bahan bakar, sedangkan aplikasi yang ditangguhkan tidak; Namun, di mata telepon, mereka tidak menggunakan memori / baterai apa pun yang terkait (asalkan mereka tidak memiliki pemrosesan latar belakang jenis apa pun yang aktif, jelas).
Anda pada dasarnya mematikan mesin Anda setiap kali Anda mematikan suatu aplikasi, dan Anda tidak membiarkan mekanisme “pintar” iOS untuk mematikan mesin Anda, jadi ketika lampu menyala hijau, Anda cukup menekan akselerator dan mesin bekerja lebih cepat daripada jika 100% dihentikan. Memulai mesin dari kondisi berhenti, juga menggunakan daya lebih dari sekadar bahan bakar, Anda perlu memutar starter agar mesin bisa diputar, bahan bakar disuntikkan, dan bunga api tercipta, jadi ... banyak pekerjaan di belakang layar. Aplikasi seperti mesin. :)