摘要:
线程协作 1.生产者消费者模式 应用场景 假设仓库中只能存放一件产品﹐生产者将生产出来的产品放入仓库,消费者将仓库中产品取走消费。 如果仓库中没有产品﹐则生产者将产品放入仓库﹐否则停止生产并等待,直到仓库中的产品被消费者取走为止。 如果仓库中放有产品﹐则消费者可以将产品取走消费﹐否则停止消费并等待, 阅读全文
posted @ 2023-08-25 17:52
Y~~~
阅读(39)
评论(0)
推荐(0)
摘要:
Lock(锁) 1. synchronized 与Lock的对比 Lock是显式锁(手动开启和关闭锁,别忘记关闭锁)synchronized是隐式锁,出了作用域自动释放。 Lock只有代码块锁,synchronized有代码块锁和方法锁 使用Lock锁,JVM将花费较少的时间来调度线程,性能更好。并 阅读全文
posted @ 2023-08-25 15:37
Y~~~
阅读(88)
评论(0)
推荐(0)
摘要:
死锁 1.死锁 多个线程各自占有一些共享资源﹐并且互相等待其他线程占有的资源才能运行,而导致两个或者多个线程都在等待对方释放资源﹐都停止执行的情形﹒某一个同步块同时拥有“两个以上对象的锁”时,就可能会发生“死锁”的问题。 // 死锁:多个线程互相抱着对方需要的资源,然后形成僵持。public cla 阅读全文
posted @ 2023-08-25 15:21
Y~~~
阅读(63)
评论(0)
推荐(0)
摘要:
线程同步 1.并发 并发∶同一个对象被多个线程同时操作 2.线程同步 处理多线程问题时,多个线程访问同一个对象﹐并且某些线程还想修改这个对象.这时候我们就需要线程同步﹒线程同步其实就是一种等待机制﹐多个需要同时访问此对象的线程进入这个对象的等待池形成队列,等待前面线程使用完毕,下一个线程再使用。 3 阅读全文
posted @ 2023-08-25 14:53
Y~~~
阅读(68)
评论(0)
推荐(0)
摘要:
守护(daemon)线程 // 测试守护线程// 上帝守护你public class TestDaemon { public static void main(String[] args) { God god = new God(); You you = new You(); Thread t 阅读全文
posted @ 2023-08-25 10:07
Y~~~
阅读(64)
评论(0)
推荐(0)
摘要:
线程优先级 Java提供一个线程调度器来监控程序中启动后进入就绪状态的所有线程,线程调度器按照优先级决定应该调度哪个线程来执行。 线程的优先级用数字表示,范围从1~10. Thread.MIN_PRIORITY = 1;Thread.MAX_PRIORITY = 10;Thread.NORM_PRI 阅读全文
posted @ 2023-08-25 09:55
Y~~~
阅读(74)
评论(0)
推荐(0)
摘要:
线程状态观测 1.五种线程状态 new 尚未启动的线程处于此状态。 Runnable 在Java虚拟机种执行的线程处于此状态。 BLocked 正在等待另一个线程执行特定动作的线程处于此状态。 Time_waiting 正在等待另一个线程动作打到指定等待时间的线程所处的状态 Terminated 已 阅读全文
posted @ 2023-08-25 09:42
Y~~~
阅读(42)
评论(0)
推荐(0)
浙公网安备 33010602011771号