终结任务
来源:互联网 发布:网页 无java加载项 编辑:程序博客网 时间:2024/06/04 18:31
线程状态
- 新建(new):当线程被创建时,线程会短暂地处于这种状态。此时,线程已经被分配了必需的系统资源并执行了初始化。此刻线程已有资格获得CPU时间,之后调度器将把这个线程转变为可运行或阻塞状态
- 就绪(Runnable):在此状态下,只要调度器将时间片分配给线程,线程就可以运行。在任意时刻,线程可运行也可不运行.
- 阻塞(Blocked):线程能够运行,但某个条件阻碍了运行。当线程处此状态时,调度器将忽略该线程,不会分配给其任何的CPU时间。直到重入就绪态,才有可能执行操作
- 死亡(Dead):处于死亡或终止态的线程将不再是可调度的,并且再也不会再得到CPU时间片,它的任务已结束,不再可运行。任务死亡的通常方式是从run()返回.
进入阻塞状态
可能原因:
- 调用sleep()使任务进入休眠。此时,线程在指定时间内不会运行
- 调用了wait()使线程挂起。直到线程得到notify()或notifyAll()消息(或者为JAVA5的juc包下的signal(),signalAll()消息),线程才会进入就绪态
- 线程在等个某个输入/输出完成
- 线程试图在某个对象上调用其同步方法,但此时对象锁被另一个线程持有不可用
suspen(),resume()因可能导致死锁被废止,stop()不释放获得的锁,亦被废止
对于处于阻塞状态的线程,必须强制这个线程跳出阻塞状态后,才可以让线程主动地终止
中断
Thread类包含interrupt(),可以用来终止一个被阻塞的线程,此方法将设置线程的中断状态.若此时线程正好处于休眠, 阻塞或者挂起,就会抛出InterruptedException异常,然后中断状态便会被清除
- 终结任务
- 终结任务
- (三)终结任务
- Java并发(3) 终结任务
- Java并发之终结任务
- Java多线程之终结任务
- 多线程学习——终结任务
- 漫谈并发编程(四):终结任务
- java多线程系列----------- 终结任务(一)
- java多线程系列----------- 终结任务(二)
- Java多线程 之 终结任务(十一)
- java Thread学习(终结任务)
- java 多线程 终结任务 装饰性花园
- Java编程思想-并发-终结任务
- 师创年终任务-银行系统(终结版)
- 师创年终任务-银行系统(终结版修改)
- java 多线程 终结任务 关于I/O和synchronized
- (39)21.4 终结任务---Java编程思想之并发笔记
- bzoj2243: [SDOI2011]染色
- python 2.7.14版本的requests库的安装
- 二维数组的“蛇形打印”输出
- Leetcode 题解系列(十一)
- Aspect报错: can't find referenced pointcut xxx
- 终结任务
- 任务计划 crontab
- Unix:signal调用类成员函数 / Linux:signal调用类成员函数
- 服务管理工具 chkconfig
- systemd 服务管理
- Java笔记13
- 895C
- Java笔记14
- 循环列子 将一个整数各个位数倒序输出