前言 只有光头才能变强 前一阵子写过一篇COW(Copy On Write)文章,结果阅读量很低啊... "COW奶牛!Copy On Write机制了解一下" 可能大家对这个技术 比较陌生 吧,但这项技术是 挺多应用场景 的。除了上文所说的Linux、文件系统外,其实在 Java 也有其身影。 大 ...
分类:
其他好文 时间:
2018-11-07 11:22:07
阅读次数:
153
在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。 在前面我们接触的队列都是非阻塞队列,比如 ...
分类:
编程语言 时间:
2018-10-25 11:19:50
阅读次数:
151
原文链接: http://ifeve.com/java-copy-on-write/ 一、Copy-On-Write Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个 ...
分类:
编程语言 时间:
2018-10-13 17:20:04
阅读次数:
227
List是接口,不能直接new,需要使用它的实现类 所有已知实现类:AbstractList, AbstractSequentialList, ArrayList, AttributeList, CopyOnWriteArrayList, LinkedList, RoleList, RoleUnre ...
分类:
其他好文 时间:
2018-09-29 17:41:10
阅读次数:
135
1. tcp (三次握手,四次挥手,为什么2msl) 2. concurrent 包 (闭锁,栅栏,concurrentHashMap,CopyOnWriteArrayList) 3. 线程池 4. linux命令 5. 锁 6. 索引 (哈希索引,b+索引 区别) 7. redis 8. 并行并发 ...
分类:
编程语言 时间:
2018-08-30 14:24:22
阅读次数:
155
1、常用的五种并发包 ConcurrentHashMap CopyOnWriteArrayList CopyOnWriteArraySet ArrayBlockingQueue LinkedBlockingQueue 2、ConcurrentHashMap 线程安全的HashMap的实现 数据结构: ...
分类:
其他好文 时间:
2018-08-29 21:26:07
阅读次数:
174
一、 ArrayList底层实现原理 对比 和Vector不同,ArrayList中的操作不是线程安全的!所以,建议在单线程中才使用ArrayList,而在多线程中可以选择Vector或者CopyOnWriteArrayList。 总结:(01) ArrayList 实际上是通过一个数组去保存数据的 ...
分类:
编程语言 时间:
2018-08-12 20:16:27
阅读次数:
207
1.倒序删 倒序删不会出现像正序删那样因为删完元素后剩余的元素索引发生改变而遗漏元素并且最终会报 java.lang.IndexOutOfBoundsException 异常的情况。 2.CopyOnWriteArrayList线程安全删除 利用CopyOnWrite容器。CopyOnWrite容器 ...
分类:
其他好文 时间:
2018-06-23 10:08:45
阅读次数:
264
并发包中并发List只有CopyOnWriteArrayList这一个,CopyOnWriteArrayList是一个线程安全的ArrayList,对其进行修改操作和元素迭代操作都是在底层创建一个拷贝数组(快照)上进行的,也就是写时拷贝策略。 我们首先看一下CopyOnWriteArrayList的 ...
分类:
编程语言 时间:
2018-06-09 21:09:49
阅读次数:
199
集合篇 在迭代一个集合的时候,如何避免ConcurrentModificationException? 在遍历一个集合的时候,我们可以使用并发集合类来避免ConcurrentModificationException,比如使用CopyOnWriteArrayList,而不是ArrayList。 fa ...
分类:
其他好文 时间:
2018-05-30 19:19:01
阅读次数:
153