< prev index next >

src/hotspot/share/runtime/thread.hpp

Print this page
rev 52189 : [mq]: tinit

*** 300,310 **** bool is_suspendible_thread() { return _suspendible_thread; } #endif private: - // Active_handles points to a block of handles JNIHandleBlock* _active_handles; // One-element thread local free list JNIHandleBlock* _free_handle_block; --- 300,309 ----
*** 397,409 **** // Manage Thread::current() void initialize_thread_current(); void clear_thread_current(); // TLS cleanup needed before threads terminate public: ! // thread entry point ! virtual void run(); // Testers virtual bool is_VM_thread() const { return false; } virtual bool is_Java_thread() const { return false; } virtual bool is_Compiler_thread() const { return false; } --- 396,412 ---- // Manage Thread::current() void initialize_thread_current(); void clear_thread_current(); // TLS cleanup needed before threads terminate + protected: + // To be implemented by children. + virtual void run() = 0; + public: ! // invokes Thread::run(). ! void call_run(); // Testers virtual bool is_VM_thread() const { return false; } virtual bool is_Java_thread() const { return false; } virtual bool is_Compiler_thread() const { return false; }
*** 641,650 **** --- 644,654 ---- void set_stack_base(address base) { _stack_base = base; } size_t stack_size() const { return _stack_size; } void set_stack_size(size_t size) { _stack_size = size; } address stack_end() const { return stack_base() - stack_size(); } void record_stack_base_and_size(); + void register_thread_stack_with_NMT() NOT_NMT_RETURN; bool on_local_stack(address adr) const { // QQQ this has knowledge of direction, ought to be a stack method return (_stack_base >= adr && adr >= stack_end()); }
< prev index next >