diff --git a/core/actor/src/main/scala/net/liftweb/actor/LAPinger.scala b/core/actor/src/main/scala/net/liftweb/actor/LAPinger.scala index a444ff242a..444daebb23 100644 --- a/core/actor/src/main/scala/net/liftweb/actor/LAPinger.scala +++ b/core/actor/src/main/scala/net/liftweb/actor/LAPinger.scala @@ -40,14 +40,16 @@ object ThreadPoolRules { object LAPinger { /**The underlying java.util.concurrent.ScheduledExecutor */ - private var service = Executors.newSingleThreadScheduledExecutor(TF) + @volatile var buildService: () => ScheduledExecutorService = () => Executors.newSingleThreadScheduledExecutor(TF) + + private var service: ScheduledExecutorService = buildService() /** * Re-create the underlying SingleThreadScheduledExecutor */ def restart: Unit = synchronized { if ((service eq null) || service.isShutdown) - service = Executors.newSingleThreadScheduledExecutor(TF) + service = buildService() } /**