Mentre si lavora su un progetto mi sono imbattuto in questo codice destinato ad un sistema di produzione:E 'sempre una cassetta di sicurezza di ignorare sempre InterruptedException chiamando sonno Discussione() in Java
public static void sleepUntil(long millisecondToWake) {
while (true) {
long currentMillisecond = System.currentTimeMillis();
if (currentMillisecond >= millisecondToWake) {
break;
}
try {
Thread.sleep(millisecondToWake - currentMillisecond);
}
catch (InterruptedException ignoredException) {
// do nothing
}
}
}
Ho sempre attaccato alla base principio di non abbandonare mai eccezioni come esposte da Joshua Bloch in Java efficace e supportate dalla mia vasta esperienza di dover eseguire il debug del codice dove qualcun altro ha fatto cadere un'eccezione. Ad oggi, non ho trovato un caso in cui sia una buona idea (a volte l'osservazione dell'eccezione controllata e il lancio di un runtime sono debitamente ragionevoli ma non sto parlando di questi casi qui).
Grazie in anticipo per eventuali commenti.
mai è una buona opzione lasciando un vuoto cattura. prima di tutto non noterai un malfunzionamento del tuo codice. leggi quando viene prodotta questa eccezione e scrivi il codice in attesa dell'eccezione. – logoff
http://stackoverflow.com/q/824110/813951 –