src/hotspot/share/runtime/vmOperations.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/hotspot/share/runtime/vmOperations.cpp	Sat May  4 16:23:01 2019
--- new/src/hotspot/share/runtime/vmOperations.cpp	Sat May  4 16:23:00 2019

*** 435,452 **** --- 435,452 ---- if (thr!=thr_cur && thr->thread_state() == _thread_in_native) { num_active++; if (thr->is_Compiler_thread()) { #if INCLUDE_JVMCI CompilerThread* ct = (CompilerThread*) thr; - if (ct->compiler() == NULL || !ct->compiler()->is_jvmci() || !UseJVMCINativeLibrary) { num_active_compiler_thread++; } else { // When using a compiler in a JVMCI shared library, it's possible // for one compiler thread to grab a lock in the shared library, // enter HotSpot and go to sleep on the shutdown safepoint. Another // JVMCI shared library compiler thread can then attempt to grab the // lock and thus never make progress. + // A JVMCI compiler thread never accesses VM data structures + // while in _thread_in_native state so there's no need to wait + // for it and potentially add a 300 millisecond delay to VM + // shutdown. + num_active--; } #else num_active_compiler_thread++; #endif }

src/hotspot/share/runtime/vmOperations.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File