java 线程
Posted 静赋清承
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 线程相关的知识,希望对你有一定的参考价值。
关于线程的一些概念:
应用程序和进程是一对一的关系,而进程和线程是一对多的关系,也就是说一个进程包含多个线程。
线程的状态:
- 新建状态
在java中可通过实现Runnable接口或者继承Thread类得到一个新的线程。
- 就绪状态
当调用start()方法时,线程处于就绪队列中,等待JVM线程调度器的调度。
- 运行状态
当处于就绪队列中的线程得到CPU资源后,就会执行run()方法进入运行状态。
处于运行状态的进程,可能会发生三种情况:
1.退回就绪状态
2.进入阻塞状态
3.进入死亡状态
- 线程死锁
例子:2个人一起吃饭但是只有一双筷子,2人轮流吃(同时拥有2只筷子才能吃)。
某一个时候,一个拿了左筷子,一人拿了右筷子,2个人都同占用一个资源,等待另一个资源,
这个时候甲在等待乙吃完并释放它占有的筷子,同理,乙也在等待甲吃完并释放它占有的筷子,
这样就陷入了一 个死循环,谁也无法继续吃饭。
以上是关于java 线程的主要内容,如果未能解决你的问题,请参考以下文章