最近想看线程启动start0的源码,下载了open-jdk1.8的代码。然后看到Thread.c中的代码如下:
static JNINativeMethod methods[] = {
{"start0", "()V", (void *)&JVM_StartThread},
....
};
说明 start0的实现为JVM_StartThread方法,然后我全局搜索找到 jvm.h
有声明:
JNIEXPORT void JNICALL
JVM_StartThread(JNIEnv *env, jobject thread);
可是我下载的open-jdk源码没有 jvm.cpp(或者jvm.c), 所以看不到具体的实现。 open-jdk不是开源的么,为什么没有这个文件?
求大佬指点一下!
我下载的源码是有的。
src/share/vm/prims/jvm.cpp