zoukankan      html  css  js  c++  java
  • 《Java并发编程实战》第五章 同步容器类 读书笔记


    一、同步容器类

    1. 同步容器类的问题
    线程容器类都是线程安全的。可是当在其上进行符合操作则须要而外加锁保护其安全性。

    常见符合操作包括:
    . 迭代
    . 跳转(依据指定顺序找到当前元素的下一个元素)
    . 条件运算

    迭代问题能够查看之前的文章


    二、并发容器


    集合类型 非线程安全 线程安全
    List ArrayList CopyOnWriteArrayList
    Set SortedSet ConcurrentSkipListSet
    Map HashMap、SortedMap ConcurrentHashMap、ConcurrentSkipListMap、


    ConcurrentHashMap
    CopyOnWriteArrayList

    三、堵塞队列 - 生产者消费者模式

         队列 - BlockingQueue


    四、堵塞方法与中断方法

    下面内容摘录自《温绍锦 - Java并发程序设计教程-》
    // 第一种方式
    Thread thread = new Thread("interrupt test") {
         public void run() {
              for (;;) {
                   doXXX();
                   if (Thread.interrupted()) {
                        break;
                   }
              }
         }
    };
    thread.start();
    
    // 另外一种方式
    Thread thread = new Thread("interrupt test") {
         public void run() {
              for (;;) {
                   try {
                        doXXX();
                   } catch (InterruptedException e) {
                        break;
                   } catch (Exception e) {
                        // handle Exception
                   }
              }
         }
    };
    thread.start();
    
    // 第三种方式
    public void foo() throws InterruptedException {
         if (Thread.interrupted()) {
              throw new InterruptedException();
         }
    }



    程序应该对线程中断作出恰当的响应。



    五、同步工具类

    1. 闭锁 CountDownLatch
    2. FutureTask
    3. 信号量
    4. 栅栏(Barrier)

    六、构建高效且可伸缩的结果缓存



  • 相关阅读:
    git 学习
    C语言 do while 语句
    C语言 计算班级平均成绩以及不及格的人数
    C语言 加减算法
    C语言 两个日期间的天数计算
    C语言 梯形面积
    C语言 while语句
    C语言 分段函数if else语句
    C语言 乘法运算
    C语言学习,for循环
  • 原文地址:https://www.cnblogs.com/cxchanpin/p/7001787.html
Copyright © 2011-2022 走看看