src/hotspot/share/gc/g1/g1ConcurrentRefineThread.cpp
changeset 51332 c25572739e7c
parent 49751 c3a10df652c0
child 53102 35530ca3e0b2
equal deleted inserted replaced
51331:7939b3c4e408 51332:c25572739e7c
    32 #include "runtime/handles.inline.hpp"
    32 #include "runtime/handles.inline.hpp"
    33 #include "runtime/mutexLocker.hpp"
    33 #include "runtime/mutexLocker.hpp"
    34 
    34 
    35 G1ConcurrentRefineThread::G1ConcurrentRefineThread(G1ConcurrentRefine* cr, uint worker_id) :
    35 G1ConcurrentRefineThread::G1ConcurrentRefineThread(G1ConcurrentRefine* cr, uint worker_id) :
    36   ConcurrentGCThread(),
    36   ConcurrentGCThread(),
       
    37   _vtime_start(0.0),
       
    38   _vtime_accum(0.0),
    37   _worker_id(worker_id),
    39   _worker_id(worker_id),
    38   _active(false),
    40   _active(false),
    39   _monitor(NULL),
    41   _monitor(NULL),
    40   _cr(cr),
    42   _cr(cr)
    41   _vtime_accum(0.0)
       
    42 {
    43 {
    43   // Each thread has its own monitor. The i-th thread is responsible for signaling
    44   // Each thread has its own monitor. The i-th thread is responsible for signaling
    44   // to thread i+1 if the number of buffers in the queue exceeds a threshold for this
    45   // to thread i+1 if the number of buffers in the queue exceeds a threshold for this
    45   // thread. Monitors are also used to wake up the threads during termination.
    46   // thread. Monitors are also used to wake up the threads during termination.
    46   // The 0th (primary) worker is notified by mutator threads and has a special monitor.
    47   // The 0th (primary) worker is notified by mutator threads and has a special monitor.