İçeriğe geç

Asenkron Hata Yutuldu (ARCH4169)

Anahtar java.logging.future-exception-unhandled · Önem warning · Kategori logging

Bir CompletableFuture zincirini hata işleyicisi olmadan başlatmak, asenkron bir hatanın sessizce kaybolmasına yol açar. İstisna ne loglanır ne de çağırana ulaşır; arıza tamamen görünmez kalır.

CompletableFuture.supplyAsync(() -> repository.load(id))
.thenAccept(cache::put);
CompletableFuture.supplyAsync(() -> repository.load(id))
.thenAccept(cache::put)
.exceptionally(e -> {
log.error("Asenkron yükleme başarısız: {}", id, e);
return null;
});

Her asenkron zincire exceptionally/handle ile bir hata işleyicisi ekleyin, böylece reddetmeler loglanır.