Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menghentikan Benang di Jawa dengan Anggun?

Bagaimana untuk Menghentikan Benang di Jawa dengan Anggun?

Linda Hamilton
Linda Hamiltonasal
2024-11-11 04:33:03983semak imbas

How to Gracefully Halt a Thread in Java?

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn