< prev index next >

src/hotspot/share/runtime/os.hpp

Print this page




 463 
 464   // thread id on Linux/64bit is 64bit, on Windows and Solaris, it's 32bit
 465   static intx current_thread_id();
 466   static int current_process_id();
 467 
 468   // Short standalone OS sleep routines suitable for slow path spin loop.
 469   // Ignores safepoints/suspension/Thread.interrupt() (so keep it short).
 470   // ms/ns = 0, will sleep for the least amount of time allowed by the OS.
 471   // Maximum sleep time is just under 1 second.
 472   static void naked_short_sleep(jlong ms);
 473   static void naked_short_nanosleep(jlong ns);
 474   // Longer standalone OS sleep routine - a convenience wrapper around
 475   // multiple calls to naked_short_sleep. Only for use by non-JavaThreads.
 476   static void naked_sleep(jlong millis);
 477   // Never returns, use with CAUTION
 478   static void infinite_sleep();
 479   static void naked_yield () ;
 480   static OSReturn set_priority(Thread* thread, ThreadPriority priority);
 481   static OSReturn get_priority(const Thread* const thread, ThreadPriority& priority);
 482 
 483   static void interrupt(Thread* thread);
 484   static bool is_interrupted(Thread* thread, bool clear_interrupted);
 485 
 486   static int pd_self_suspend_thread(Thread* thread);
 487 
 488   static ExtendedPC fetch_frame_from_context(const void* ucVoid, intptr_t** sp, intptr_t** fp);
 489   static frame      fetch_frame_from_context(const void* ucVoid);
 490   static frame      fetch_frame_from_ucontext(Thread* thread, void* ucVoid);
 491 
 492   static void breakpoint();
 493   static bool start_debugging(char *buf, int buflen);
 494 
 495   static address current_stack_pointer();
 496   static address current_stack_base();
 497   static size_t current_stack_size();
 498 
 499   static void verify_stack_alignment() PRODUCT_RETURN;
 500 
 501   static bool message_box(const char* title, const char* message);
 502   static char* do_you_want_to_debug(const char* message);
 503 
 504   // run cmd in a separate process and return its exit code; or -1 on failures
 505   static int fork_and_exec(char *cmd, bool use_vfork_if_available = false);




 463 
 464   // thread id on Linux/64bit is 64bit, on Windows and Solaris, it's 32bit
 465   static intx current_thread_id();
 466   static int current_process_id();
 467 
 468   // Short standalone OS sleep routines suitable for slow path spin loop.
 469   // Ignores safepoints/suspension/Thread.interrupt() (so keep it short).
 470   // ms/ns = 0, will sleep for the least amount of time allowed by the OS.
 471   // Maximum sleep time is just under 1 second.
 472   static void naked_short_sleep(jlong ms);
 473   static void naked_short_nanosleep(jlong ns);
 474   // Longer standalone OS sleep routine - a convenience wrapper around
 475   // multiple calls to naked_short_sleep. Only for use by non-JavaThreads.
 476   static void naked_sleep(jlong millis);
 477   // Never returns, use with CAUTION
 478   static void infinite_sleep();
 479   static void naked_yield () ;
 480   static OSReturn set_priority(Thread* thread, ThreadPriority priority);
 481   static OSReturn get_priority(const Thread* const thread, ThreadPriority& priority);
 482 



 483   static int pd_self_suspend_thread(Thread* thread);
 484 
 485   static ExtendedPC fetch_frame_from_context(const void* ucVoid, intptr_t** sp, intptr_t** fp);
 486   static frame      fetch_frame_from_context(const void* ucVoid);
 487   static frame      fetch_frame_from_ucontext(Thread* thread, void* ucVoid);
 488 
 489   static void breakpoint();
 490   static bool start_debugging(char *buf, int buflen);
 491 
 492   static address current_stack_pointer();
 493   static address current_stack_base();
 494   static size_t current_stack_size();
 495 
 496   static void verify_stack_alignment() PRODUCT_RETURN;
 497 
 498   static bool message_box(const char* title, const char* message);
 499   static char* do_you_want_to_debug(const char* message);
 500 
 501   // run cmd in a separate process and return its exit code; or -1 on failures
 502   static int fork_and_exec(char *cmd, bool use_vfork_if_available = false);


< prev index next >