From 92dc51f6a88c2983d07e73c707e5d53c64eb59b1 Mon Sep 17 00:00:00 2001 From: Juergen Hoeller Date: Fri, 9 Oct 2015 22:54:44 +0200 Subject: [PATCH] Shutdown hook triggers doClose within startupShutdownMonitor Issue: SPR-13556 --- .../context/support/AbstractApplicationContext.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spring-context/src/main/java/org/springframework/context/support/AbstractApplicationContext.java b/spring-context/src/main/java/org/springframework/context/support/AbstractApplicationContext.java index 81a4de473f..b44e86fe8f 100644 --- a/spring-context/src/main/java/org/springframework/context/support/AbstractApplicationContext.java +++ b/spring-context/src/main/java/org/springframework/context/support/AbstractApplicationContext.java @@ -891,7 +891,9 @@ public abstract class AbstractApplicationContext extends DefaultResourceLoader this.shutdownHook = new Thread() { @Override public void run() { - doClose(); + synchronized (startupShutdownMonitor) { + doClose(); + } } }; Runtime.getRuntime().addShutdownHook(this.shutdownHook);