< prev index next >

src/share/vm/runtime/thread.cpp

Print this page




 964 
 965   Handle main_instance = klass->allocate_instance_handle(CHECK_NH);
 966   {
 967     JavaValue result(T_VOID);
 968     Handle string = java_lang_String::create_from_str("main", CHECK_NH);
 969     JavaCalls::call_special(&result,
 970                             main_instance,
 971                             klass,
 972                             vmSymbols::object_initializer_name(),
 973                             vmSymbols::threadgroup_string_void_signature(),
 974                             system_instance,
 975                             string,
 976                             CHECK_NH);
 977   }
 978   return main_instance;
 979 }
 980 
 981 // Creates the initial Thread
 982 static oop create_initial_thread(Handle thread_group, JavaThread* thread,
 983                                  TRAPS) {

 984   Klass* k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_Thread(), true, CHECK_NULL);
 985   instanceKlassHandle klass (THREAD, k);
 986   instanceHandle thread_oop = klass->allocate_instance_handle(CHECK_NULL);
 987 
 988   java_lang_Thread::set_thread(thread_oop(), thread);
 989   java_lang_Thread::set_priority(thread_oop(), NormPriority);
 990   thread->set_threadObj(thread_oop());

 991 
 992   Handle string = java_lang_String::create_from_str("main", CHECK_NULL);
 993 
 994   JavaValue result(T_VOID);
 995   JavaCalls::call_special(&result, thread_oop,
 996                           klass,
 997                           vmSymbols::object_initializer_name(),
 998                           vmSymbols::threadgroup_string_void_signature(),
 999                           thread_group,
1000                           string,
1001                           CHECK_NULL);
1002   return thread_oop();
1003 }
1004 
1005 char java_runtime_name[128] = "";
1006 char java_runtime_version[128] = "";
1007 
1008 // extract the JRE name from java.lang.VersionProps.java_runtime_name
1009 static const char* get_java_runtime_name(TRAPS) {
1010   Klass* k = SystemDictionary::find(vmSymbols::java_lang_VersionProps(),
1011                                     Handle(), Handle(), CHECK_AND_CLEAR_NULL);
1012   fieldDescriptor fd;




 964 
 965   Handle main_instance = klass->allocate_instance_handle(CHECK_NH);
 966   {
 967     JavaValue result(T_VOID);
 968     Handle string = java_lang_String::create_from_str("main", CHECK_NH);
 969     JavaCalls::call_special(&result,
 970                             main_instance,
 971                             klass,
 972                             vmSymbols::object_initializer_name(),
 973                             vmSymbols::threadgroup_string_void_signature(),
 974                             system_instance,
 975                             string,
 976                             CHECK_NH);
 977   }
 978   return main_instance;
 979 }
 980 
 981 // Creates the initial Thread
 982 static oop create_initial_thread(Handle thread_group, JavaThread* thread,
 983                                  TRAPS) {
 984   static const char *initial_thread_name = "main";
 985   Klass* k = SystemDictionary::resolve_or_fail(vmSymbols::java_lang_Thread(), true, CHECK_NULL);
 986   instanceKlassHandle klass (THREAD, k);
 987   instanceHandle thread_oop = klass->allocate_instance_handle(CHECK_NULL);
 988 
 989   java_lang_Thread::set_thread(thread_oop(), thread);
 990   java_lang_Thread::set_priority(thread_oop(), NormPriority);
 991   thread->set_threadObj(thread_oop());
 992   thread->set_native_thread_name(initial_thread_name);
 993 
 994   Handle string = java_lang_String::create_from_str(initial_thread_name, CHECK_NULL);
 995 
 996   JavaValue result(T_VOID);
 997   JavaCalls::call_special(&result, thread_oop,
 998                           klass,
 999                           vmSymbols::object_initializer_name(),
1000                           vmSymbols::threadgroup_string_void_signature(),
1001                           thread_group,
1002                           string,
1003                           CHECK_NULL);
1004   return thread_oop();
1005 }
1006 
1007 char java_runtime_name[128] = "";
1008 char java_runtime_version[128] = "";
1009 
1010 // extract the JRE name from java.lang.VersionProps.java_runtime_name
1011 static const char* get_java_runtime_name(TRAPS) {
1012   Klass* k = SystemDictionary::find(vmSymbols::java_lang_VersionProps(),
1013                                     Handle(), Handle(), CHECK_AND_CLEAR_NULL);
1014   fieldDescriptor fd;


< prev index next >