equal
deleted
inserted
replaced
2027 CompileTask* volatile _task; // print_threads_compiling can read this concurrently. |
2027 CompileTask* volatile _task; // print_threads_compiling can read this concurrently. |
2028 CompileQueue* _queue; |
2028 CompileQueue* _queue; |
2029 BufferBlob* _buffer_blob; |
2029 BufferBlob* _buffer_blob; |
2030 |
2030 |
2031 AbstractCompiler* _compiler; |
2031 AbstractCompiler* _compiler; |
|
2032 TimeStamp _idle_time; |
2032 |
2033 |
2033 public: |
2034 public: |
2034 |
2035 |
2035 static CompilerThread* current(); |
2036 static CompilerThread* current(); |
2036 |
2037 |
2037 CompilerThread(CompileQueue* queue, CompilerCounters* counters); |
2038 CompilerThread(CompileQueue* queue, CompilerCounters* counters); |
|
2039 ~CompilerThread(); |
2038 |
2040 |
2039 bool is_Compiler_thread() const { return true; } |
2041 bool is_Compiler_thread() const { return true; } |
2040 |
2042 |
2041 virtual bool can_call_java() const; |
2043 virtual bool can_call_java() const; |
2042 |
2044 |
2060 CompileLog* log() { return _log; } |
2062 CompileLog* log() { return _log; } |
2061 void init_log(CompileLog* log) { |
2063 void init_log(CompileLog* log) { |
2062 // Set once, for good. |
2064 // Set once, for good. |
2063 assert(_log == NULL, "set only once"); |
2065 assert(_log == NULL, "set only once"); |
2064 _log = log; |
2066 _log = log; |
|
2067 } |
|
2068 |
|
2069 void start_idle_timer() { _idle_time.update(); } |
|
2070 jlong idle_time_millis() { |
|
2071 return TimeHelper::counter_to_millis(_idle_time.ticks_since_update()); |
2065 } |
2072 } |
2066 |
2073 |
2067 #ifndef PRODUCT |
2074 #ifndef PRODUCT |
2068 private: |
2075 private: |
2069 IdealGraphPrinter *_ideal_graph_printer; |
2076 IdealGraphPrinter *_ideal_graph_printer; |