src/share/vm/prims/jvm.cpp

Print this page




4616                values_h->int_at(0) == java_lang_Thread::TERMINATED,
4617              "Invalid threadStatus value");
4618       objArrayOop r = oopFactory::new_objArray(SystemDictionary::string_klass(),
4619                                                1, /* only 1 substate */
4620                                                CHECK_NULL);
4621       names_h = objArrayHandle(THREAD, r);
4622       Handle name = java_lang_String::create_from_str("TERMINATED", CHECK_NULL);
4623       names_h->obj_at_put(0, name());
4624       break;
4625     }
4626     default:
4627       // Unknown state - probably incompatible JDK version
4628       return NULL;
4629   }
4630   return (jobjectArray) JNIHandles::make_local(env, names_h());
4631 }
4632 JVM_END
4633 
4634 JVM_ENTRY(void, JVM_GetVersionInfo(JNIEnv* env, jvm_version_info* info, size_t info_size))
4635 {
4636   memset(info, 0, sizeof(info_size));
4637 
4638   info->jvm_version = Abstract_VM_Version::jvm_version();
4639   info->update_version = 0;          /* 0 in HotSpot Express VM */
4640   info->special_update_version = 0;  /* 0 in HotSpot Express VM */
4641 
4642   // when we add a new capability in the jvm_version_info struct, we should also
4643   // consider to expose this new capability in the sun.rt.jvmCapabilities jvmstat
4644   // counter defined in runtimeService.cpp.
4645   info->is_attachable = AttachListener::is_attach_supported();
4646 #ifdef KERNEL
4647   info->is_kernel_jvm = 1; // true;
4648 #else  // KERNEL
4649   info->is_kernel_jvm = 0; // false;
4650 #endif // KERNEL
4651 }
4652 JVM_END
4653 


4616                values_h->int_at(0) == java_lang_Thread::TERMINATED,
4617              "Invalid threadStatus value");
4618       objArrayOop r = oopFactory::new_objArray(SystemDictionary::string_klass(),
4619                                                1, /* only 1 substate */
4620                                                CHECK_NULL);
4621       names_h = objArrayHandle(THREAD, r);
4622       Handle name = java_lang_String::create_from_str("TERMINATED", CHECK_NULL);
4623       names_h->obj_at_put(0, name());
4624       break;
4625     }
4626     default:
4627       // Unknown state - probably incompatible JDK version
4628       return NULL;
4629   }
4630   return (jobjectArray) JNIHandles::make_local(env, names_h());
4631 }
4632 JVM_END
4633 
4634 JVM_ENTRY(void, JVM_GetVersionInfo(JNIEnv* env, jvm_version_info* info, size_t info_size))
4635 {
4636   memset(info, 0, info_size);
4637 
4638   info->jvm_version = Abstract_VM_Version::jvm_version();
4639   info->update_version = 0;          /* 0 in HotSpot Express VM */
4640   info->special_update_version = 0;  /* 0 in HotSpot Express VM */
4641 
4642   // when we add a new capability in the jvm_version_info struct, we should also
4643   // consider to expose this new capability in the sun.rt.jvmCapabilities jvmstat
4644   // counter defined in runtimeService.cpp.
4645   info->is_attachable = AttachListener::is_attach_supported();
4646 #ifdef KERNEL
4647   info->is_kernel_jvm = 1; // true;
4648 #else  // KERNEL
4649   info->is_kernel_jvm = 0; // false;
4650 #endif // KERNEL
4651 }
4652 JVM_END
4653