equal
deleted
inserted
replaced
197 static u_char* get_gvars_hcSequence_addr(); |
197 static u_char* get_gvars_hcSequence_addr(); |
198 static size_t get_gvars_size(); |
198 static size_t get_gvars_size(); |
199 static u_char* get_gvars_stwRandom_addr(); |
199 static u_char* get_gvars_stwRandom_addr(); |
200 }; |
200 }; |
201 |
201 |
202 // ObjectLocker enforced balanced locking and can never thrown an |
202 // ObjectLocker enforces balanced locking and can never throw an |
203 // IllegalMonitorStateException. However, a pending exception may |
203 // IllegalMonitorStateException. However, a pending exception may |
204 // have to pass through, and we must also be able to deal with |
204 // have to pass through, and we must also be able to deal with |
205 // asynchronous exceptions. The caller is responsible for checking |
205 // asynchronous exceptions. The caller is responsible for checking |
206 // the threads pending exception if needed. |
206 // the thread's pending exception if needed. |
207 class ObjectLocker : public StackObj { |
207 class ObjectLocker : public StackObj { |
208 private: |
208 private: |
209 Thread* _thread; |
209 Thread* _thread; |
210 Handle _obj; |
210 Handle _obj; |
211 BasicLock _lock; |
211 BasicLock _lock; |