< prev index next >

src/share/vm/runtime/thread.cpp

Print this page




  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *
  23  */
  24 
  25 #include "precompiled.hpp"
  26 #include "classfile/classLoader.hpp"
  27 #include "classfile/javaClasses.hpp"
  28 #include "classfile/systemDictionary.hpp"
  29 #include "classfile/vmSymbols.hpp"
  30 #include "code/codeCache.hpp"
  31 #include "code/codeCacheExtensions.hpp"
  32 #include "code/scopeDesc.hpp"
  33 #include "compiler/compileBroker.hpp"

  34 #include "gc/shared/gcLocker.inline.hpp"
  35 #include "gc/shared/workgroup.hpp"
  36 #include "interpreter/interpreter.hpp"
  37 #include "interpreter/linkResolver.hpp"
  38 #include "interpreter/oopMapCache.hpp"
  39 #include "jvmtifiles/jvmtiEnv.hpp"
  40 #include "memory/metaspaceShared.hpp"
  41 #include "memory/oopFactory.hpp"
  42 #include "memory/universe.inline.hpp"
  43 #include "oops/instanceKlass.hpp"
  44 #include "oops/objArrayOop.hpp"
  45 #include "oops/oop.inline.hpp"
  46 #include "oops/symbol.hpp"
  47 #include "oops/verifyOopClosure.hpp"
  48 #include "prims/jvm_misc.hpp"
  49 #include "prims/jvmtiExport.hpp"
  50 #include "prims/jvmtiThreadState.hpp"
  51 #include "prims/privilegedStack.hpp"
  52 #include "runtime/arguments.hpp"
  53 #include "runtime/atomic.inline.hpp"


 202   DEBUG_ONLY(_current_resource_mark = NULL;)
 203   set_handle_area(new (mtThread) HandleArea(NULL));
 204   set_metadata_handles(new (ResourceObj::C_HEAP, mtClass) GrowableArray<Metadata*>(30, true));
 205   set_active_handles(NULL);
 206   set_free_handle_block(NULL);
 207   set_last_handle_mark(NULL);
 208 
 209   // This initial value ==> never claimed.
 210   _oops_do_parity = 0;
 211 
 212   // the handle mark links itself to last_handle_mark
 213   new HandleMark(this);
 214 
 215   // plain initialization
 216   debug_only(_owned_locks = NULL;)
 217   debug_only(_allow_allocation_count = 0;)
 218   NOT_PRODUCT(_allow_safepoint_count = 0;)
 219   NOT_PRODUCT(_skip_gcalot = false;)
 220   _jvmti_env_iteration_count = 0;
 221   set_allocated_bytes(0);

 222   _vm_operation_started_count = 0;
 223   _vm_operation_completed_count = 0;
 224   _current_pending_monitor = NULL;
 225   _current_pending_monitor_is_from_java = true;
 226   _current_waiting_monitor = NULL;
 227   _num_nested_signal = 0;
 228   omFreeList = NULL;
 229   omFreeCount = 0;
 230   omFreeProvision = 32;
 231   omInUseList = NULL;
 232   omInUseCount = 0;
 233 
 234 #ifdef ASSERT
 235   _visited_for_critical_count = false;
 236 #endif
 237 
 238   _SR_lock = new Monitor(Mutex::suspend_resume, "SR_lock", true,
 239                          Monitor::_safepoint_check_sometimes);
 240   _suspend_flags = 0;
 241 




  14  *
  15  * You should have received a copy of the GNU General Public License version
  16  * 2 along with this work; if not, write to the Free Software Foundation,
  17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18  *
  19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  20  * or visit www.oracle.com if you need additional information or have any
  21  * questions.
  22  *
  23  */
  24 
  25 #include "precompiled.hpp"
  26 #include "classfile/classLoader.hpp"
  27 #include "classfile/javaClasses.hpp"
  28 #include "classfile/systemDictionary.hpp"
  29 #include "classfile/vmSymbols.hpp"
  30 #include "code/codeCache.hpp"
  31 #include "code/codeCacheExtensions.hpp"
  32 #include "code/scopeDesc.hpp"
  33 #include "compiler/compileBroker.hpp"
  34 #include "gc/shared/gcId.hpp"
  35 #include "gc/shared/gcLocker.inline.hpp"
  36 #include "gc/shared/workgroup.hpp"
  37 #include "interpreter/interpreter.hpp"
  38 #include "interpreter/linkResolver.hpp"
  39 #include "interpreter/oopMapCache.hpp"
  40 #include "jvmtifiles/jvmtiEnv.hpp"
  41 #include "memory/metaspaceShared.hpp"
  42 #include "memory/oopFactory.hpp"
  43 #include "memory/universe.inline.hpp"
  44 #include "oops/instanceKlass.hpp"
  45 #include "oops/objArrayOop.hpp"
  46 #include "oops/oop.inline.hpp"
  47 #include "oops/symbol.hpp"
  48 #include "oops/verifyOopClosure.hpp"
  49 #include "prims/jvm_misc.hpp"
  50 #include "prims/jvmtiExport.hpp"
  51 #include "prims/jvmtiThreadState.hpp"
  52 #include "prims/privilegedStack.hpp"
  53 #include "runtime/arguments.hpp"
  54 #include "runtime/atomic.inline.hpp"


 203   DEBUG_ONLY(_current_resource_mark = NULL;)
 204   set_handle_area(new (mtThread) HandleArea(NULL));
 205   set_metadata_handles(new (ResourceObj::C_HEAP, mtClass) GrowableArray<Metadata*>(30, true));
 206   set_active_handles(NULL);
 207   set_free_handle_block(NULL);
 208   set_last_handle_mark(NULL);
 209 
 210   // This initial value ==> never claimed.
 211   _oops_do_parity = 0;
 212 
 213   // the handle mark links itself to last_handle_mark
 214   new HandleMark(this);
 215 
 216   // plain initialization
 217   debug_only(_owned_locks = NULL;)
 218   debug_only(_allow_allocation_count = 0;)
 219   NOT_PRODUCT(_allow_safepoint_count = 0;)
 220   NOT_PRODUCT(_skip_gcalot = false;)
 221   _jvmti_env_iteration_count = 0;
 222   set_allocated_bytes(0);
 223   _gc_id = GCId::undefined();
 224   _vm_operation_started_count = 0;
 225   _vm_operation_completed_count = 0;
 226   _current_pending_monitor = NULL;
 227   _current_pending_monitor_is_from_java = true;
 228   _current_waiting_monitor = NULL;
 229   _num_nested_signal = 0;
 230   omFreeList = NULL;
 231   omFreeCount = 0;
 232   omFreeProvision = 32;
 233   omInUseList = NULL;
 234   omInUseCount = 0;
 235 
 236 #ifdef ASSERT
 237   _visited_for_critical_count = false;
 238 #endif
 239 
 240   _SR_lock = new Monitor(Mutex::suspend_resume, "SR_lock", true,
 241                          Monitor::_safepoint_check_sometimes);
 242   _suspend_flags = 0;
 243 


< prev index next >