java - ExecutorService terminated, but the JVM did not -
i submit tasks executors.newfixedthreadpool(3), run , complete successfully. call
executorservice.shutdown(); executorservice.awaittermination(2000, timeunit.milliseconds); check via
executorservice.isshutdown() executorservice.isterminated() and twice true back. main thread exits, jvm stays alive. there's no awt thread or alike, can see 3 pool threads, destroyjavavm, , com.google.inject.internal.util.$finalizer.
the finalizer prime suspect, if wasn't deamon thread. suspended 2 threads image

actually, i'd expect pool threads long gone, because of isterminated == true. idea waiting for?
it seems debug image service not alone it's named pool-2. might have executorservice still running pool-1 prevents jvm exit.
Comments
Post a Comment