2018年11月27日

多线程安全问题之Lock显示锁

摘要: package com.hls.juc;import java.util.concurrent.locks.Lock;import java.util.concurrent.locks.ReentrantLock;/** * 解决多线程安全问题的方式: 3种 * synchronized: 隐式锁 阅读全文

posted @ 2018-11-27 21:21 无所谓的称昵 阅读(254) 评论(0) 推荐(0) 编辑

实现多线程的方式之实现Callable接口

摘要: package com.hls.juc;import java.util.concurrent.Callable;import java.util.concurrent.ExecutionException;import java.util.concurrent.FutureTask;/** * 创 阅读全文

posted @ 2018-11-27 20:57 无所谓的称昵 阅读(867) 评论(0) 推荐(0) 编辑

juc并发工具类之CountDownLatch闭锁

摘要: import java.util.concurrent.CountDownLatch;/** * 闭锁: 在进行某些运算时, 只有其他所有线程的运算全部完成,当前运算才继续执行(程序流中加了一道栅栏) * 联想: 相当于水电站的水坝, 会拦截上游的水, 当积累到一定水位才放水. * 马场赛马,需要所 阅读全文

posted @ 2018-11-27 20:11 无所谓的称昵 阅读(147) 评论(0) 推荐(0) 编辑

juc包下的集合类

摘要: import java.util.Iterator;import java.util.concurrent.CopyOnWriteArrayList;/** * 集合在多线程中同步的方式: * 1. Collections.synchronizedMap() * 2. Hashtable锁机制: 将 阅读全文

posted @ 2018-11-27 19:13 无所谓的称昵 阅读(1131) 评论(0) 推荐(0) 编辑

多线程的共享变量的内存不可见性

摘要: /** * 线程的开销 : 线程的创建和销毁 * 线程的上下文切换和调度 * 线程的同步 * * * 多线程的内存模型: 线程独有的工作内存(线程缓存用于提高效率)---------所有线程共享的主内存 * * 线程读取在主内存的成员变量(即共享变量)的过程: * 1. 线程的工作内存会去读取主内存的成员变量并保存副本 * 2. 线程在工作内存... 阅读全文

posted @ 2018-11-27 14:32 无所谓的称昵 阅读(1407) 评论(0) 推荐(0) 编辑

导航