İçeriğe geç

Sızdırılan eşzamanlılık tanıtıcısı (ARCH4085)

Anahtar java.performance.leaked-concurrency-handle · Önem warning · Kategori performance

Executors.newFixedThreadPool ile oluşturulup hiç shutdown() edilmeyen bir havuz, daemon olmayan iş parçacıklarını canlı tutar ve JVM’in kapanmasını engeller.

public void run(List<Task> tasks) {
ExecutorService pool = Executors.newFixedThreadPool(4);
tasks.forEach(pool::submit);
}
public void run(List<Task> tasks) {
ExecutorService pool = Executors.newFixedThreadPool(4);
try {
tasks.forEach(pool::submit);
} finally {
pool.shutdown();
}
}

Oluşturulan executor havuzlarını bir finally veya try-with-resources içinde shutdown() ile kapatın.