Java 线程状态的转换
Java 中的线程可以处于不同的状态,这些状态之间可以通过调用相应的方法进行转换。
1. 新建(New):
创建一个线程,但尚未启动。2. 就绪(Runnable):
线程已启动,并且已准备运行,但等待分配 CPU 时间。3. 运行(Running):
线程正在执行代码。4. 等待(Waiting):
线程已暂停,等待某些事件或 I/O 操作完成。5. 睡眠(Timed Waiting):
线程已暂停,等待指定的时间段。6. 阻塞(Blocked):
线程无法继续执行,因为它正等待资源(如锁)的访问权限。7. 终止(Terminated):
线程已完成执行或已中止。状态转换方法:
start():从 New 状态转换为 Runnable 状态,启动线程。 join():使调用线程等待,直到目标线程终止。 sleep(long milliseconds):使线程进入 Timed Waiting 状态,指定的时间段后自动唤醒。 wait():使线程进入 Waiting 状态,直到其他线程调用 notify() 或 notifyAll()。 notify():唤醒在该对象上等待的单个线程。 notifyAll():唤醒在该对象上等待的所有线程。 interrupt():中断正在运行或等待的线程。以上就是java线程状态怎么转的详细内容,更多请关注知识资源分享宝库其它相关文章!
版权声明
本站内容来源于互联网搬运,
仅限用于小范围内传播学习,请在下载后24小时内删除,
如果有侵权内容、不妥之处,请第一时间联系我们删除。敬请谅解!
E-mail:dpw1001@163.com
发表评论