Mercurial > hg > truffle
diff src/share/vm/compiler/compileBroker.hpp @ 20465:7301840ea20e
8023461: Thread holding lock at safepoint that vm can block on: MethodCompileQueue_lock
Reviewed-by: kvn, iveresov
author | vlivanov |
---|---|
date | Tue, 11 Mar 2014 15:06:34 +0400 |
parents | 7b9127b17b7a |
children | dd89808e49ba |
line wrap: on
line diff
--- a/src/share/vm/compiler/compileBroker.hpp Fri Sep 12 01:04:04 2014 +0000 +++ b/src/share/vm/compiler/compileBroker.hpp Tue Mar 11 15:06:34 2014 +0400 @@ -188,7 +188,11 @@ CompileTask* _first; CompileTask* _last; + CompileTask* _first_stale; + int _size; + + void purge_stale_tasks(); public: CompileQueue(const char* name, Monitor* lock) { _name = name; @@ -196,6 +200,7 @@ _first = NULL; _last = NULL; _size = 0; + _first_stale = NULL; } const char* name() const { return _name; } @@ -203,6 +208,7 @@ void add(CompileTask* task); void remove(CompileTask* task); + void remove_and_mark_stale(CompileTask* task); CompileTask* first() { return _first; } CompileTask* last() { return _last; } @@ -211,6 +217,7 @@ bool is_empty() const { return _first == NULL; } int size() const { return _size; } + // Redefine Classes support void mark_on_stack(); void delete_all();