摘要: #1. JUC辅助类 ##1.1 CountDownLatch 减少计数 方法 await() / await(long timeout, TimeUnit unit) (unit 时间单位) 阻塞,直到count为0,或线程被中断,或达到给定的时间 countDown() 计数减一,直到为0,释放 阅读全文
posted @ 2020-12-15 18:01 夜小十五天 阅读(112) 评论(0) 推荐(0) 编辑
摘要: #1. 集合类不安全 ##1.1 List不安全 集合线程的不安全性,如多线程操作ArrayList时,ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常,并发修改异常 List<String> list 阅读全文
posted @ 2020-12-15 16:27 夜小十五天 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 1 等待唤醒机制 1.1 线程间通信 概念:多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同。 为何要处理线程之间的通讯? ​ 让多线程在访问同一份资源时按照一定的规律进行。 如何保证线程间通信有效利用资源: ​ 多个线程在处理同一个资源,并且任务不同时,需要线程通信来帮助解决线程之间 阅读全文
posted @ 2020-12-15 16:13 夜小十五天 阅读(325) 评论(0) 推荐(0) 编辑
摘要: #1.线程间的通信 线程间通信 生产者+消费者 通知等待唤醒机制 多线程编程模板 判断 干活 通知 判断需使用while,以防止中断和虚假唤醒(见java.lang.Object的API) A thread can also wake up without being notified, inter 阅读全文
posted @ 2020-12-15 16:09 夜小十五天 阅读(50) 评论(0) 推荐(0) 编辑
摘要: ##1 八锁现象 问题一:标准访问,先打印短信还是邮件? public class Lock_8_1 { public static void main(String[] args) throws Exception { Phone phone = new Phone(); new Thread(( 阅读全文
posted @ 2020-12-15 14:58 夜小十五天 阅读(183) 评论(0) 推荐(0) 编辑