摘要: 测试代码: package com.kaka.thread; import java.util.concurrent.Executor; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executor 阅读全文
posted @ 2021-07-12 22:20 卡卡发 阅读(23) 评论(0) 推荐(0)
摘要: package com.kaka.thread; //测试生产者消费者问题2 >信号灯法:标志位 public class TestPC2 { public static void main(String[] args) { TV tv=new TV(); new Actor(tv).start() 阅读全文
posted @ 2021-07-12 21:47 卡卡发 阅读(45) 评论(0) 推荐(0)
摘要: 理解: 生产者将生产好的数据放入缓冲区 , 消费者从缓冲区拿出数据。通过判断缓冲区大小来决定生产者何时生产,消费者何时消费。只要缓冲区有产品,消费者就可以消费。只要缓冲区不满,生产者就可以生产。 模型: 生产者 : 负责生产数据的模块 (可能是方法 , 对象 , 线程 , 进程) ; 消费者 : 负 阅读全文
posted @ 2021-07-12 21:13 卡卡发 阅读(75) 评论(0) 推荐(0)
摘要: 显式的定义锁 CopyOnWriteArrayList类中也有ReentrantLock(可重入锁) //定义lock锁 ReentrantLock lock=new ReentrantLock(); //加锁 lock.lock(); //解锁 lock.unlock(); package tes 阅读全文
posted @ 2021-07-12 16:31 卡卡发 阅读(54) 评论(0) 推荐(0)
摘要: 化妆的例子 两个女生同时要化妆,需要用口红和镜子: 当女孩1拿到口红时,1秒后需要拿到镜子,才能解除对口红的锁(即:同步块中嵌套类一个同步块) 同一时间下女孩2拿到镜子,2秒后需要拿到口红才能解除对镜子的锁 因此两方僵持住了,形成了死锁 package test2; public class Dea 阅读全文
posted @ 2021-07-12 14:22 卡卡发 阅读(47) 评论(0) 推荐(0)
摘要: package test2; import java.util.concurrent.CopyOnWriteArrayList; //测试GUC安全类型的集合 public class TestGUC { public static void main(String[] args) { CopyOn 阅读全文
posted @ 2021-07-12 09:02 卡卡发 阅读(26) 评论(0) 推荐(0)