一:框架图 二:框架分析 (0)点线框表示接口,实线框表示具体的类。 (1)常用的List、Set、Queue、Map都属于集合类。前三个都是继承自Collection,但是Map不是。 (2)List不仅可以生成普通的Iterator(因为继承自Collection),还能生成ListIterat ...
分类:
编程语言 时间:
2018-06-24 00:32:48
阅读次数:
165
12.Java多线程-java.util.concurrent.atomic包原理解读 11.volatile底层实现原理 12.Java多线程-java.util.concurrent.atomic包原理解读 参考学习:http://blog.csdn.net/zhangerqing/articl ...
分类:
其他好文 时间:
2018-06-23 20:55:26
阅读次数:
136
11.java.util.concurrent.atomic原子操作类包 11.java.util.concurrent.atomic原子操作类包 这个包里面提供了一组原子变量类。其基本的特性就是在多线程环境下,当有多个线程同时执行这些类的实例包含的方法时,具有排他性,即当某个线程进入方法,执行其中 ...
分类:
编程语言 时间:
2018-06-23 14:31:48
阅读次数:
155
本文主要介绍 java中在并发环境下,有哪些方案实现线程安全,注意 线程问题主要由内存模型引起的(在基础篇中) 目录 valotile可见性 CAS无锁编程 内置锁(同步关键字synchronied) 显示锁(lock) valotile可见性 1 volatile关键字的两层语义(一旦一个共享变量 ...
分类:
编程语言 时间:
2018-06-22 13:38:44
阅读次数:
199
volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于v ...
分类:
其他好文 时间:
2018-06-21 01:34:03
阅读次数:
161
/** * 单例模式-双重校验锁 * @author szekinwin * */public class SingleTon3 { private SingleTon3(){}; //私有化构造方法 private static volatile SingleTon3 singleTon=null ...
分类:
其他好文 时间:
2018-06-20 12:52:36
阅读次数:
140
AbstractQueuedSynchronizer简称为AQS,是juc里很基本的一个包,juc里很多工具类是基于AQS实现的,理解了AQS,其它很多juc工具类也会比较清楚了。 1、方法简述 getState 返回当前state的值,该操作具有volatile读的内存语义。 setState 设 ...
分类:
其他好文 时间:
2018-06-18 22:15:59
阅读次数:
258
之前面试被问到C++里static的作用是什么,但我却只知道static在java里的作用是什么,于是就google了一下c++相关面试题,发现这个同学总结的很棒。 就记录一下。 原文地址:C/C++面试知识总结 侵删 正文分割线 const 作用 Volatile volatile 关键字是一种类 ...
分类:
编程语言 时间:
2018-06-15 15:56:06
阅读次数:
211
原文链接:http://www.cnblogs.com/dolphin0520/p/3920373.html 作者:海子 Java并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会 ...
分类:
编程语言 时间:
2018-06-14 18:20:57
阅读次数:
182
一、AQS原理 AQS(AbstractQueuedSynchronizer)队列同步器是用来构建锁、同步组件的基础框架。 AQS内部通过一个volatile int类型的成员变量state控制同步状态【0代表锁未被占用,1表示已占用】,通过内部类Node构成FIFO的同步队列实现等待获取锁的线程排 ...
分类:
其他好文 时间:
2018-06-11 11:06:46
阅读次数:
255