4、线程 Thread类的方法:sleep & isAlive & yield & setPriority
sleep方法 :当前线程睡若干秒,若干数取决于传入sleep方法的参数:
isAlive方法 :获取当前线程是否 活着的信息
运行结果:
如下显示,当线程1的 i为6的 时候,线程1调用了sleep方法睡了2秒,线程2这时候执行,2秒后 线程1继续执行
yield方法 :礼让(释放CPU对当前线程的执行权、其它线程会获得CPU的执行,但是有可能当前线程 又被分配给CPU执行)
改动 线程1的代码 ,当 i%20==0 的时候,当前线程礼让(满足条件的 i 的值 被20整除:0、20、40、60、80、100)
运行结果 不太明显:
setPriority方法 :设置线程的优先级(设置的只是一个概率,并不是一定就 优先,只是概率大小)
线程的优先级等级
- MAX_PRIORITY:10
- MIN _PRIORITY:1
- NORM_PRIORITY:5
涉及的方法
- getPriority() :返回线程优先值
- setPriority(int newPriority) :改变线程的优先级
说明
- 线程创建时继承父线程的优先级
- 低优先级只是获得调度的概率低,并非一定是在高优先级线程之后才被调用