equal
deleted
inserted
replaced
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. |