İstisnalar yemek gibi görünen bir ScheduledThreadPoolExecutor var. Gönderilen bir Runnable bir istisna atarsa, icracı servisimin beni bilgilendirmesini istiyorum.ThreadPools'ta özel durum yönetimi
Örneğin, ben bir yan soru olarak IndexArrayOutOfBoundsException en StackTrace
threadPool.scheduleAtFixedRate(
new Runnable() {
public void run() {
int[] array = new array[0];
array[42] = 5;
}
},
1000,
1500L,
TimeUnit.MILLISECONDS);
yazdırmak en azından aşağıdaki kodu istiyorum. ScheduledThreadPoolExecutor için genel bir try catch bloğu yazmanın bir yolu var mı? ORİJİNAL SORU
////////// SON //////////////
olarak aşağıdaki Dekoratör iyi çalışıyor önerdi.
public class CatcherTask implements Runnable{
Runnable runMe;
public CatcherTask(Runnable runMe) {
this.runMe = runMe;
}
public void run() {
try {
runMe.run();
} catch (Exception ex){
ex.printStackTrace();
}
}
}
Mükemmel bir soru. Acaba neden sadece birkaç insan bu işe karışıyor? – whiskeysierra
Ayrıca bkz. Http://stackoverflow.com/questions/1687977/how-to-properly-catch-runtimeexceptions-from-executors – Raedwald