hotspot/src/share/vm/gc/cms/concurrentMarkSweepThread.cpp
changeset 32623 390a27af5657
parent 30764 fec48bf5a827
child 33107 77bf0d2069a3
equal deleted inserted replaced
32622:7ed47d0b888a 32623:390a27af5657
    37 #include "runtime/os.hpp"
    37 #include "runtime/os.hpp"
    38 #include "runtime/vmThread.hpp"
    38 #include "runtime/vmThread.hpp"
    39 
    39 
    40 // ======= Concurrent Mark Sweep Thread ========
    40 // ======= Concurrent Mark Sweep Thread ========
    41 
    41 
    42 // The CMS thread is created when Concurrent Mark Sweep is used in the
    42 ConcurrentMarkSweepThread* ConcurrentMarkSweepThread::_cmst = NULL;
    43 // older of two generations in a generational memory system.
    43 CMSCollector* ConcurrentMarkSweepThread::_collector         = NULL;
    44 
    44 bool ConcurrentMarkSweepThread::_should_terminate           = false;
    45 ConcurrentMarkSweepThread*
    45 int  ConcurrentMarkSweepThread::_CMS_flag                   = CMS_nil;
    46      ConcurrentMarkSweepThread::_cmst     = NULL;
    46 
    47 CMSCollector* ConcurrentMarkSweepThread::_collector = NULL;
    47 volatile jint ConcurrentMarkSweepThread::_pending_yields    = 0;
    48 bool ConcurrentMarkSweepThread::_should_terminate = false;
    48 
    49 int  ConcurrentMarkSweepThread::_CMS_flag         = CMS_nil;
    49 SurrogateLockerThread* ConcurrentMarkSweepThread::_slt      = NULL;
    50 
       
    51 volatile jint ConcurrentMarkSweepThread::_pending_yields      = 0;
       
    52 
       
    53 SurrogateLockerThread*
       
    54      ConcurrentMarkSweepThread::_slt = NULL;
       
    55 SurrogateLockerThread::SLT_msg_type
    50 SurrogateLockerThread::SLT_msg_type
    56      ConcurrentMarkSweepThread::_sltBuffer = SurrogateLockerThread::empty;
    51      ConcurrentMarkSweepThread::_sltBuffer = SurrogateLockerThread::empty;
    57 Monitor*
    52 Monitor* ConcurrentMarkSweepThread::_sltMonitor             = NULL;
    58      ConcurrentMarkSweepThread::_sltMonitor = NULL;
       
    59 
    53 
    60 ConcurrentMarkSweepThread::ConcurrentMarkSweepThread(CMSCollector* collector)
    54 ConcurrentMarkSweepThread::ConcurrentMarkSweepThread(CMSCollector* collector)
    61   : ConcurrentGCThread() {
    55   : ConcurrentGCThread() {
    62   assert(UseConcMarkSweepGC,  "UseConcMarkSweepGC should be set");
    56   assert(UseConcMarkSweepGC,  "UseConcMarkSweepGC should be set");
    63   assert(_cmst == NULL, "CMS thread already created");
    57   assert(_cmst == NULL, "CMS thread already created");