1. 首页
  2. 编程语言
  3. Java
  4. Java多线程start()方法原理解析

Java多线程start()方法原理解析

上传者: 2022-04-28 06:27:00上传 PDF文件 63.04 KB 热度 27次

run()方法只是一个类中的普通方法,调用run方法跟调用普通方法一样而start()是创建线程等一系列工作,然后自己调用run里面的任务内容。验证代码:结果:mainThread-0启动新线程检查线程状态关于threadStatus源码:通过代码可以看到就是threadStatus就是记录Thread的状态,初始线程默认为0.加入线程组调用start0()start0()方法使用c++编写的方法,这些代码在gdk代码中,所以这里不再这里探究了。通过刚刚源码分析,就知道start方法刚开始就检查线程状态,当线程创建后或结束了,该状态就不同于初始化状态就会抛出IllegalThreadStateException异常。由jvm创建的main方法线程和system组线程,并不会通过start来启动。

下载地址
用户评论