comparison src/share/vm/runtime/safepoint.cpp @ 20192:581e70386ec9

8039147: Cleanup SuspendibleThreadSet Reviewed-by: brutisso, tschatzl, mgerdin
author pliden
date Fri, 11 Apr 2014 12:29:24 +0200
parents 78bbf4d43a14
children ce8f6bb717c9
comparison
equal deleted inserted replaced
20191:fd81a5764900 20192:581e70386ec9
73 # include "nativeInst_ppc.hpp" 73 # include "nativeInst_ppc.hpp"
74 # include "vmreg_ppc.inline.hpp" 74 # include "vmreg_ppc.inline.hpp"
75 #endif 75 #endif
76 #if INCLUDE_ALL_GCS 76 #if INCLUDE_ALL_GCS
77 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp" 77 #include "gc_implementation/concurrentMarkSweep/concurrentMarkSweepThread.hpp"
78 #include "gc_implementation/shared/concurrentGCThread.hpp" 78 #include "gc_implementation/shared/suspendibleThreadSet.hpp"
79 #endif // INCLUDE_ALL_GCS 79 #endif // INCLUDE_ALL_GCS
80 #ifdef COMPILER1 80 #ifdef COMPILER1
81 #include "c1/c1_globals.hpp" 81 #include "c1/c1_globals.hpp"
82 #endif 82 #endif
83 83
110 if (UseConcMarkSweepGC) { 110 if (UseConcMarkSweepGC) {
111 // In the future we should investigate whether CMS can use the 111 // In the future we should investigate whether CMS can use the
112 // more-general mechanism below. DLD (01/05). 112 // more-general mechanism below. DLD (01/05).
113 ConcurrentMarkSweepThread::synchronize(false); 113 ConcurrentMarkSweepThread::synchronize(false);
114 } else if (UseG1GC) { 114 } else if (UseG1GC) {
115 ConcurrentGCThread::safepoint_synchronize(); 115 SuspendibleThreadSet::synchronize();
116 } 116 }
117 #endif // INCLUDE_ALL_GCS 117 #endif // INCLUDE_ALL_GCS
118 118
119 // By getting the Threads_lock, we assure that no threads are about to start or 119 // By getting the Threads_lock, we assure that no threads are about to start or
120 // exit. It is released again in SafepointSynchronize::end(). 120 // exit. It is released again in SafepointSynchronize::end().
486 #if INCLUDE_ALL_GCS 486 #if INCLUDE_ALL_GCS
487 // If there are any concurrent GC threads resume them. 487 // If there are any concurrent GC threads resume them.
488 if (UseConcMarkSweepGC) { 488 if (UseConcMarkSweepGC) {
489 ConcurrentMarkSweepThread::desynchronize(false); 489 ConcurrentMarkSweepThread::desynchronize(false);
490 } else if (UseG1GC) { 490 } else if (UseG1GC) {
491 ConcurrentGCThread::safepoint_desynchronize(); 491 SuspendibleThreadSet::desynchronize();
492 } 492 }
493 #endif // INCLUDE_ALL_GCS 493 #endif // INCLUDE_ALL_GCS
494 // record this time so VMThread can keep track how much time has elasped 494 // record this time so VMThread can keep track how much time has elasped
495 // since last safepoint. 495 // since last safepoint.
496 _end_of_last_safepoint = os::javaTimeMillis(); 496 _end_of_last_safepoint = os::javaTimeMillis();