黑马程序员技术交流社区

标题: 线程死掉 [打印本页]

作者: 黑马张健    时间: 2012-5-25 09:48
标题: 线程死掉
一个线程在什么情况下会死掉?
能否总结一下各种情况?
作者: niceBoy    时间: 2012-5-25 10:03
死锁产生的条件
1、资源互斥:就是资源仅能让一个线程使用而不支持多个线程同时使用
2、请求保持:已经拥有资源的线程在请求其他资源时并没有释放当前资源
3、不能剥夺:已经获得的资源在自主释放前不能使用其他手段剥夺
4、循环等待:各个线程对资源的需求构成了一个循环

作者: 黑马11期李项京    时间: 2012-5-25 10:09
Thread类的方法
(1)        sleep(),睡眠
(2)        yield(),激活
(3)        join(),暂停
(4)        interrupt(),中断
(5)        currentThread(),用于返回当前线程的引用
(6)        stop(),强制终止线程

线程的生命周期主要有:新建、可运行、运行、阻塞、终止状态

线程在抛出异常时就会终止,还有就是运行到线程函数结束或者运行到退出线程的语句stop()都会结束
作者: Gao23616    时间: 2012-5-25 13:45


线程;是进程中的一个执行控制单元,执行路径。
线程分为;
1.一个进程中如果只有一个执行路径,这个程序称为单线程。
2.一个进程中如果有多个执行路径时,这个程序称为多线程。(好处;同时执行多条路径,多部分代码同时执行,提高效率。JVM也是多线程的)

Thread和Runnable是实现java多线程的2种方式,runable是接口,thread是类,建议使用runable实现java多线程,不管如何,最终都需要通过thread.start()来使线程处于可运行状态。

线程状态;
                              
                                  临时阻塞   
                  start             | |      sleep,wait
被创建———————>运行—————————>冻结
                                     | |     时间到,notify
                                    消亡   








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2