Siapa pun yang telah menggunakan Windows telah melihat pesan sistem sesekali yang menyatakan bahwa suatu program tidak merespons, tetapi bagaimana tepatnya Windows mengetahui hal itu? Posting SuperUser Q & A saat ini memiliki jawaban atas pertanyaan pembaca yang bingung.
Sesi Tanya & Jawab hari ini hadir untuk memberi kami hak milik SuperUser-sub divisi Stack Exchange, pengelompokan situs web Q & A berbasis komunitas.
Foto milik Matthias Ripp (Flickr).
Pembaca SuperUser, ArunPrasanth ingin tahu bagaimana Windows mengetahui bahwa program tidak merespons:
Bagaimana cara Windows mengetahui jika suatu program tidak merespons? Apakah ini terus-menerus melakukan polling pada semua aplikasi yang sedang berjalan?
Bagaimana cara Windows mengetahui jika program tidak merespons?
Penyumbang super User ratchet freak memiliki jawaban untuk kami:
Aplikasi mendapat acara dari antrean yang disediakan oleh Windows. Jika aplikasi tidak melakukan polling antrean acara untuk sementara (5 detik), seperti melakukan perhitungan panjang misalnya, maka Windows berasumsi bahwa aplikasi digantung dan memberi tahu pengguna.
Untuk menghindarinya, aplikasi harus mendorong perhitungan mahal ke thread pekerja atau membagi pemrosesan dan memastikan antrean mendapatkan polling secara teratur.
Memiliki sesuatu untuk ditambahkan ke penjelasan? Bicaralah di komentar. Ingin membaca lebih banyak jawaban dari pengguna Stack Exchange yang paham teknologi lainnya? Lihat diskusi lengkap di sini.