zoukankan      html  css  js  c++  java
  • Java多线程并发

    线程安全:
        java并发容器之CopyOnWriteArraylist(读多写少)CopyOnWriteArrayList来做容器。这个类和ArrayList最大的区别就是add(E) 的时候。容器会自动copy一份出来然后再尾部add(E)。
            java并发容器之CopyOnWriteArraylist即使写时复制的容器,通俗的说就是当我们网一个容器中添加元素的时候,不直接网当前容器添加,
            而是先将当前容器进行复制,复制出一份新的容器,然后新的容器进行添加元素,添加完后,再将元容器的引用指向新的容器,
            这样做的好吃是我们可以对CopyOnWrite容器机型并发的读,而不需要家锁,因为当前容器不会添加任何元素,所以CopyOnWrie容器也是一种读写分离的思想,地和些不同的容器;
        
        synchronized 和 ReentrantLock区别:
        悲观锁的创建:(synchronized)
            Collection<String> Collection = new Collections.SynchronizedCollection(str);
            是一种并发控制的方法。如果一个线程执行事务的时候,其他县城要想在执行必须等待当前线程把锁释放;
        乐观锁:(重入锁ReentrantLock)递归锁
            它假设多用户并发的事务在处理时不会彼此互相影响,各事务能够在不产生锁的情况下处理各自影响的那部分数据。
            在提交数据更新之前,每个事务会先检查在该事务读取数据后,有没有其他事务又修改了该数据。如果其他事务有更新的话,正在提交的事务会进行回滚。
  • 相关阅读:
    jQuery 全选-------左右移动select
    圆饼 折线图的 js
    折线图
    圆饼图
    el 表达式的if else
    list查询出来后存到map里
    spring Mvc 二级联动(3)
    Python之列表
    SAS 中的数据拼接
    Git 安装不是默认路径,生成密钥
  • 原文地址:https://www.cnblogs.com/czbcxy/p/7082322.html
Copyright © 2011-2022 走看看