hotspot/src/share/vm/runtime/thread.cpp
changeset 9992 0d82cce3e655
parent 9946 b3d5b50e2289
child 10022 377345fb5fb5
--- a/hotspot/src/share/vm/runtime/thread.cpp	Fri Jun 10 15:44:02 2011 -0700
+++ b/hotspot/src/share/vm/runtime/thread.cpp	Mon Jun 13 09:58:16 2011 -0700
@@ -3698,6 +3698,14 @@
     // heap is unparseable if they are caught. Grab the Heap_lock
     // to prevent this. The GC vm_operations will not be able to
     // queue until after the vm thread is dead.
+    // After this point, we'll never emerge out of the safepoint before
+    // the VM exits, so concurrent GC threads do not need to be explicitly
+    // stopped; they remain inactive until the process exits.
+    // Note: some concurrent G1 threads may be running during a safepoint,
+    // but these will not be accessing the heap, just some G1-specific side
+    // data structures that are not accessed by any other threads but them
+    // after this point in a terminal safepoint.
+
     MutexLocker ml(Heap_lock);
 
     VMThread::wait_for_vm_thread_exit();