Ignore IllegalStateException if JVM is already shutting down

Trying to register/unregister a shutdown hook when the JVM is already in
shutdown throws an IllegalStateException. Ignore this exception since we
can't do anything about it.

Bug: 580953
Change-Id: I8fc6fdd5585837c81ad0ebd6944430856556d90e
This commit is contained in:
Matthias Sohn 2022-10-27 20:31:31 +02:00
parent 035e0e23f2
commit 924491d4df
1 changed files with 13 additions and 8 deletions

View File

@ -300,14 +300,19 @@ public static final class FileStoreAttributes {
static { static {
// Shut down the SAVE_RUNNER on System.exit() // Shut down the SAVE_RUNNER on System.exit()
Runtime.getRuntime().addShutdownHook(new Thread(() -> { try {
try { Runtime.getRuntime().addShutdownHook(new Thread(() -> {
SAVE_RUNNER.shutdownNow(); try {
SAVE_RUNNER.awaitTermination(100, TimeUnit.MILLISECONDS); SAVE_RUNNER.shutdownNow();
} catch (Exception e) { SAVE_RUNNER.awaitTermination(100,
// Ignore; we're shutting down TimeUnit.MILLISECONDS);
} } catch (Exception e) {
})); // Ignore; we're shutting down
}
}));
} catch (IllegalStateException e) {
// ignore - may fail if shutdown is already in progress
}
} }
/** /**