await()
numarasını kullanarak CountDownLatch
boyutunda 1'in üzerinde birden çok tüketici iletkeni var. Başarıyla tamamlandığında, countDown()
numaralı telefonu arayarak tek bir üretici iş parçacığım var.Bir CountDownLatch'ı nasıl "iptal ederim"?
Bu, hata olmadığında mükemmel çalışır. Bununla birlikte, eğer üretici bir hata tespit ederse, hata mesajını tüketici ipliklerine bildirebilmek isterim. İdeal olarak, üreticinin abortCountDown()
gibi bir şey çağırmasını ve tüm tüketicilerin bir InterruptedException veya başka bir istisna almasını sağlayabiliyordum. countDown()
numaralı telefonu aramak istemiyorum çünkü bu, tüm tüketici iş parçacıklarımın await()
numaralı çağrıdan sonra başarı için ek bir manuel kontrol yapmasını gerektiriyor. Nasıl başa çıkacaklarını bildikleri bir istisna almayı tercih ederim.
Bir iptal etme tesisinin CountDownLatch
numaralı telefondan temin edilemediğini biliyorum. Geri sayımın iptal edilmesini destekleyen CountDownLatch
'u etkili bir şekilde oluşturmak için kolayca uyarlayabileceğim bir başka senkronizasyon var mı?
Bu sınıf nasıl kullanılır, Durumum Benim bir liste var ve liste gerçek zamanlı olarak dinamik olarak güncelleniyor. Listede 2 dakika beklemek zorunda olduğum bir Otomatik Olay var, ama eğer bekleme süresi arasında Manuel Manuel Olay listeye geliyorsa beklemeyi kesmeliyim ve hemen harekete geçmeliyim. –