< prev index next >

src/hotspot/share/runtime/thread.hpp

Print this page
rev 57126 : [mq]: 8234796-v2


2268 
2269   // Get Java threads that are waiting to enter a monitor.
2270   static GrowableArray<JavaThread*>* get_pending_threads(ThreadsList * t_list,
2271                                                          int count, address monitor);
2272 
2273   // Get owning Java thread from the monitor's owner field.
2274   static JavaThread *owning_thread_from_monitor_owner(ThreadsList * t_list,
2275                                                       address owner);
2276 
2277   // Number of threads on the active threads list
2278   static int number_of_threads()                 { return _number_of_threads; }
2279   // Number of non-daemon threads on the active threads list
2280   static int number_of_non_daemon_threads()      { return _number_of_non_daemon_threads; }
2281 
2282   // Deoptimizes all frames tied to marked nmethods
2283   static void deoptimized_wrt_marked_nmethods();
2284 
2285   struct Test;                  // For private gtest access.
2286 };
2287 
2288 
2289 // Thread iterator
2290 class ThreadClosure: public StackObj {
2291  public:
2292   virtual void do_thread(Thread* thread) = 0;
2293 };
2294 
2295 class SignalHandlerMark: public StackObj {
2296  private:
2297   Thread* _thread;
2298  public:
2299   SignalHandlerMark(Thread* t) {
2300     _thread = t;
2301     if (_thread) _thread->enter_signal_handler();
2302   }
2303   ~SignalHandlerMark() {
2304     if (_thread) _thread->leave_signal_handler();
2305     _thread = NULL;
2306   }
2307 };
2308 
2309 
2310 #endif // SHARE_RUNTIME_THREAD_HPP


2268 
2269   // Get Java threads that are waiting to enter a monitor.
2270   static GrowableArray<JavaThread*>* get_pending_threads(ThreadsList * t_list,
2271                                                          int count, address monitor);
2272 
2273   // Get owning Java thread from the monitor's owner field.
2274   static JavaThread *owning_thread_from_monitor_owner(ThreadsList * t_list,
2275                                                       address owner);
2276 
2277   // Number of threads on the active threads list
2278   static int number_of_threads()                 { return _number_of_threads; }
2279   // Number of non-daemon threads on the active threads list
2280   static int number_of_non_daemon_threads()      { return _number_of_non_daemon_threads; }
2281 
2282   // Deoptimizes all frames tied to marked nmethods
2283   static void deoptimized_wrt_marked_nmethods();
2284 
2285   struct Test;                  // For private gtest access.
2286 };
2287 







2288 class SignalHandlerMark: public StackObj {
2289  private:
2290   Thread* _thread;
2291  public:
2292   SignalHandlerMark(Thread* t) {
2293     _thread = t;
2294     if (_thread) _thread->enter_signal_handler();
2295   }
2296   ~SignalHandlerMark() {
2297     if (_thread) _thread->leave_signal_handler();
2298     _thread = NULL;
2299   }
2300 };
2301 
2302 
2303 #endif // SHARE_RUNTIME_THREAD_HPP
< prev index next >