通过对比两者的源码,可以发现start方法使用native语言创建完线程之后,再用该线程调用run方法。而执行run方法相当于直接使用主线程执行run方法,两者具有本质的区别。
为了验证,你可以在run方法之类打印线程的名字,然后分别执行run及start方法,看结果即可。
本文通过对比Java中线程的start方法与run方法,揭示了两者在执行过程中的本质区别。start方法通过native语言创建新线程并调用run方法,而直接执行run方法则使用主线程执行,验证这一区别的实验方法也被提及。
通过对比两者的源码,可以发现start方法使用native语言创建完线程之后,再用该线程调用run方法。而执行run方法相当于直接使用主线程执行run方法,两者具有本质的区别。
为了验证,你可以在run方法之类打印线程的名字,然后分别执行run及start方法,看结果即可。

被折叠的 条评论
为什么被折叠?