ho il seguente codice in un Runnable che viene passato a un filo t:filo java che chiude presto e sospettosamente
public void run() {
logger.debug("Starting thread " + Thread.currentThread());
try {
doStuff();
} catch (Exception e) {
logger.debug("Exception in Thread " + Thread.currentThread());
}
logger.debug("End of thread " + Thread.currentThread());
}
ho colpito un bug in cui vedo situazione di stallo con le seguenti condizioni
- solo l'inizio del messaggio di thread è stato stampato da miei log
- Un dump filo mostra che la t filo (dovrebbe essere l'esecuzione di questo) non è più in esecuzione
Esiste un modo magico in cui questo thread potrebbe essere terminato in anticipo senza registrare un messaggio di fine thread o generare un'eccezione?
grazie mille. Il thread era OOMing - e dato che non stavo catturando il throwable (e forse altri logging erano mal configurati?), Non ho ricevuto alcuna notifica – Jacob