94 private: |
94 private: |
95 static ThreadPriority _current_priority; |
95 static ThreadPriority _current_priority; |
96 |
96 |
97 static bool _should_terminate; |
97 static bool _should_terminate; |
98 static bool _terminated; |
98 static bool _terminated; |
|
99 static bool _gclog_reentry; |
99 static Monitor * _terminate_lock; |
100 static Monitor * _terminate_lock; |
100 static PerfCounter* _perf_accumulated_vm_operation_time; |
101 static PerfCounter* _perf_accumulated_vm_operation_time; |
101 |
102 |
102 void evaluate_operation(VM_Operation* op); |
103 void evaluate_operation(VM_Operation* op); |
103 public: |
104 public: |
113 |
114 |
114 // Called to stop the VM thread |
115 // Called to stop the VM thread |
115 static void wait_for_vm_thread_exit(); |
116 static void wait_for_vm_thread_exit(); |
116 static bool should_terminate() { return _should_terminate; } |
117 static bool should_terminate() { return _should_terminate; } |
117 static bool is_terminated() { return _terminated == true; } |
118 static bool is_terminated() { return _terminated == true; } |
|
119 static bool is_gclog_reentry() { return _gclog_reentry; } |
|
120 static void set_gclog_reentry(bool reentry) { _gclog_reentry = reentry; } |
118 |
121 |
119 // Execution of vm operation |
122 // Execution of vm operation |
120 static void execute(VM_Operation* op); |
123 static void execute(VM_Operation* op); |
121 |
124 |
122 // Returns the current vm operation if any. |
125 // Returns the current vm operation if any. |