CopyOnWriteArraylist的启发
来源:互联网 发布:辣妈拾宝 淘宝达人 编辑:程序博客网 时间:2024/05/31 19:09
之前看了这种典型的读写分离的集合类,自认为了解了。回首在看,其实有很多东西还都不了解。
先说下这个集合的功能作用。假设现在有两个线程,一个线程读取list的数据,另一个线程在线程一读取的过程中对list进行了添加。这时候如果是一般的ArrayList就有可能读取到添加的数据了。这在数据库中就是不可重复读了。为什么说有可能,而不是一定呢?自己去想!!!
数据库隔离级别链接
如果是CopyOnWriteArraylist是一定不会错误的,为什么呢?因为在线程二进行删除的时候,操作的其实不是,,,未写完。
用对象锁住方法的时候还能调用这个对象吗?
package com.zyq.trest;import java.util.ArrayList;import java.util.List;class ThreadWrite implements Runnable{ public List list; public void set(List lis) { this.list=lis; } @Override public void run() { synchronized (list) { list.add(4); } }}public class TestCopyOnWrite { private static final ArrayList list; static { list=new ArrayList<>(); list.add(1); list.add(2); list.add(3); } class ThreadRead implements Runnable{ @Override public void run() { ThreadWrite threadWrite=new ThreadWrite(); threadWrite.set(list); for(int i=0;i<list.size();i++) { if(i==2) { new Thread(threadWrite).start(); } try { Thread.sleep(1000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.err.println(list.get(i)); } } } public void test() { new Thread(new ThreadRead()).start(); } public static void main(String[] args) { TestCopyOnWrite testCopyOnWrite=new TestCopyOnWrite(); testCopyOnWrite.test(); }}
阅读全文
0 0
- CopyOnWriteArraylist的启发
- 启发算法,元启发算法的优势?
- java CopyOnWriteArrayList的使用
- java CopyOnWriteArrayList的使用
- CopyOnWriteArrayList的理解
- java CopyOnWriteArrayList的使用
- java CopyOnWriteArrayList的使用
- java CopyOnWriteArrayList的使用
- java CopyOnWriteArrayList的使用
- java CopyOnWriteArrayList的使用
- Java的 CopyOnWriteArrayList
- java CopyOnWriteArrayList的使用
- CopyOnWriteArrayList的使用
- CopyOnWriteArrayList的理解
- java CopyOnWriteArrayList的使用
- CopyOnWriteArrayList的实现
- 找银行的启发
- 《圈子圈套》的启发
- OpenStack+Ceph+热迁移+++七、实现热迁移
- FreeMarker入门案例
- 一个做了6年seo优化,想对各位站长们说你们长点心吧
- 在Ubuntu 16.04.3 LTS上搭建Go语言环境实录
- event_base02
- CopyOnWriteArraylist的启发
- 梯度方法在非线形最小二乘法问题的应用
- Linux安装Memcached
- 链表的倒置
- react中操作dom元素自动填充
- pyqt布局管理器QGridLayout简单示例
- Eclipse离线配置Hibernate Tools
- AS 配置及撤销之前的删除操作
- 添加头文件搜索路径的方法