Ketika sebuah aplikasi tidak merespons, saya memaksa Keluar dan Mulai Ulang.
Tetapi, apakah ada cara di mana saya bisa menyimpan data saya sebelum berhenti? Apakah ada yang bisa saya lakukan untuk memastikan bahwa aplikasi itu benar-benar mati?
Sayangnya, ketika aplikasi tidak merespons, secara umum tidak mungkin untuk menyelamatkan data apa pun. Pengecualian untuk hal ini adalah aplikasi yang menyimpan file pemulihan secara berkala, misalnya aplikasi Microsoft Office suite.
Pilihan Anda adalah menunggu dan berharap aplikasi merespons atau Force Quit.
Tergantung pada mengapa aplikasi "Not Responding".
Aplikasi dalam keadaan ini tidak membalas peristiwa UI yang dikirim oleh sistem. Jadi, tidak ada yang Anda lakukan di UI yang bisa masuk, yang membatasi pilihan Anda.
Saya mengetahui tiga skenario di mana aplikasi "Not Responding" (alias "hung") dapat dibangkitkan, dengan kemungkinan untuk memulihkan data Anda.
Penyebab paling umum dari aplikasi hang adalah disk contention yang berat. Hal ini biasanya akan hilang dengan sendirinya jika Anda menunggu cukup lama, tetapi bisa memakan waktu beberapa menit dalam situasi yang ekstrim. Berhenti dari semua aplikasi lain, terutama yang menggunakan banyak memori, dapat mempercepat pemulihan ini.
Yang kurang umum adalah aplikasi yang hang karena masalah dengan disk. Hal ini sebenarnya tidak begitu jarang terjadi jika Anda mengakses disk yang terpasang di jaringan, tetapi juga bisa terjadi pada hard-drive eksternal. Dalam kasus disk jaringan, Anda dapat mencoba untuk unmount, atau mengubah lokasi jaringan Anda untuk menonaktifkan jaringan sebagai cara untuk secara paksa unmount. Dalam kasus disk fisik, cobalah mencabutnya (jelas sebagai upaya terakhir). Setelah perangkat disk dihapus secara paksa dari sistem, aplikasi mungkin dapat melanjutkan operasi... atau mungkin crash.
Yang lebih jarang terjadi adalah aplikasi yang memunculkan sub-proses dan kemudian hang karena proses tersebut melakukan sesuatu yang tidak terduga. Sebagai contoh, saya pernah melihat Safari hang karena masalah sub-proses QuickTime dan WebKit. Menemukan dan mematikan sub-proses yang tepat dapat membebaskan aplikasi utama. Tetapi anda harus cukup nyaman dengan terminal, perintah "ps", dan melacak id proses induk.
Mencari tahu dengan tepat mengapa sebuah aplikasi tergantung melibatkan banyak hal yang harus dilakukan pada level unix untuk melihat bagaimana keadaan prosesnya. Tools seperti "ps", "top", dan "lsof" dapat membantu. Tetapi mudah-mudahan tips-tips di atas dapat mengarahkan Anda ke arah yang benar.