版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_42528266/article/details/103007925
Thread.MIN_PRIORITY = 1
Thread.MAX_PRIORITY = 10
Thread.NORM_PRIORITY = 5
int getPriority();
void setPriority(int newPriority);
注意:优先级低只是意味着获得调度的概率低。并不是绝对先调用优先级高后调用 优先级低的线程。
join ()
:阻塞指定线程等到另一个线程完成以后再继续执行sleep ()
:使线程停止运行一段时间,将处于阻塞状态,如果调用了sleep方法之后,没有其他等待执行的线程,这个时候当前线程不会马上恢复执行!yield ()
:让当前正在执行线程暂停,不是阻塞线程,而是将线程转入就绪状态.如果调用了yield方法之后,没有其他等待执行的线程,这个时候当前线程就会马上恢复执行!setDaemon()
interrupt()
:并没有直接中断线程,而是需要被中断线程自己处理stop()
:结束线程,不推荐使用synchronized (obj){ }
private synchronized void makeWithdrawal(int amt) {}
java.util.concurrent.lock
中的 Lock 框架是锁定的一个抽象,它允许把锁定的实现作为 Java 类,而不是作为语 言的特性来实现。这就为 Lock 的多种实现留下了空间,各种实现可能有不同的调度算法、性能特性或者锁 定语义。解决了线程安全问题