run()方法中是各个线程要执行的具体内容。所以当一个线程直接调用run()时那么直接开始执行方法体,这是在main线程中的多个线程只能时按照顺序的等待前面的线程结束run()方法的执行。文章来源:https://www.toymoban.com/news/detail-426117.html
而调用start方法只是线程进入准备阶段(Ready),并没有真正执行,这需要JVM进行分配时间片进行轮转线程执行,当一个线程得到时间片时,那么JVM会使该线程自动的调用run方法执行,当时间片结束时,这就到下一个线程来执行run方法了,当再次接到时间片时,进行线程的上下文切换,继续之前的运行。这才是多线程的含义。文章来源地址https://www.toymoban.com/news/detail-426117.html
到了这里,关于java 多线程的start()和run()的理解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!