8044796: G1: Enable G1CollectedHeap::stop()

Reviewed-by: brutisso, sjohanss
This commit is contained in:
Per Lidén 2014-06-13 13:46:06 +02:00
parent f3cb0b79b8
commit 5e1811cd0e
4 changed files with 11 additions and 38 deletions

View file

@ -3968,14 +3968,8 @@ bool Threads::destroy_vm() {
// GC vm_operations can get caught at the safepoint, and the
// 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.
// queue until after the vm thread is dead. After this point,
// we'll never emerge out of the safepoint before the VM exits.
MutexLocker ml(Heap_lock);