Memberhentikan Benang di Jawa dengan Anggun
Apabila benang mengambil masa yang terlalu lama untuk dilaksanakan, mungkin perlu menghentikannya dengan anggun untuk mengelakkan ketidakstabilan sistem. Pendekatan pilihan untuk mencapai ini adalah dengan melaksanakan bendera boolean dalam kaedah run() benang, seperti berikut:
class MyThread extends Thread { volatile boolean finished = false; public void stopMe() { finished = true; } public void run() { while (!finished) { // Perform necessary tasks } } }
Ini membolehkan anda menghentikan urutan daripada sumber luaran dengan menetapkan selesai kepada benar.
Adalah penting untuk ambil perhatian bahawa kaedah Thread.stop() yang sudah lapuk sememangnya tidak selamat. Seperti yang dinyatakan oleh dokumentasi Java, ia boleh membawa kepada tingkah laku sewenang-wenangnya kerana membuka kunci monitor dan kemungkinan ketidakkonsistenan dalam keadaan objek. Oleh itu, melaksanakan pengawal dalam kaedah run() benang, seperti yang ditunjukkan di atas, ialah pendekatan yang disyorkan dan selamat untuk penamatan benang yang anggun.
Atas ialah kandungan terperinci Bagaimana untuk Menghentikan Benang di Jawa dengan Anggun?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!