İçeriğe geç

Join'siz Thread (ARCH4041)

Anahtar java.async.thread-without-join · Önem warning · Kategori async

Bir thread oluşturulup başlatıldığında ancak join() çağrılmadığında, üreten kapsam thread’in işi tamamlanmadan sonlanabilir; işi ve istisnaları gözlemlenmeden kalır.

void load() {
Thread t = new Thread(this::fetch);
t.start(); // join yok
} // metot iş bitmeden döner
void load() throws InterruptedException {
Thread t = new Thread(this::fetch);
t.start();
t.join(); // tamamlanmasını bekle
}

Başlatılan thread’i join() ile bekleyin ya da yaşam döngüsünü yöneten bir ExecutorService kullanın.