I am looking for some in-depth explanation How Thread.start() internally invokes run() method. I know that its my JVM which internally calls run() via start() method and when I started checking the source code of Thread class, I found these below code:
public synchronized void start()
{
if(threadStatus != 0)
throw new IllegalThreadStateException();
group.add(this);
start0();
if(stopBeforeStart)
stop0(throwableFromStop);
}
private native void start0();
Now as I can see that the start() is calling the native method start0() but I can not see any code related to the loading of native code library.
Please help me understanding the complete call flow.
Thanks, Sandip