获取当前线程对象的方法是:Thread.currentThread();
当线程目标的run方法结束,意味着线程完成
线程的状态:
1)新状态:线程对象已经创建,但是还没有调用start方法
2)可运行状态:start方法被调用。或者运行之后,从阻塞等待睡眠回来后。
3)运行状态:开始运行,可以看场可运行状态时运行状态的一个缓冲
4)等待睡眠阻塞 状态:冻结状态
5)死亡,run方法结束
阻止线程运行:
睡眠:Thread.sleep()
线程的优先级和线程的让步:
setPriority() 线程的优先级在1~10之间,默认是5
Thread.yield() 有可能是没有效果的。因为让步的线程还是会被线程调度再次选中。
线程的加入:
join()
Thread的非静态方法join()让一个线程B“加入”到另外一个线程A的尾部。在A执行完毕之前,B不能工作。
join()方法还有带超时限制的重载版本。例如t.join(5000);则让线程等待5000毫秒,如果超过这个时间,则停止等待,变为可运行状态
鉴于同步与锁看着有点复杂,下一次专门再看好了。
时间: 2024-12-17 16:23:59