概要 本章对Java.util.concurrent包中的ConcurrentSkipListSet类进行详细的介绍。内容包括:ConcurrentSkipListSet介绍ConcurrentSkipListSet原理…
分类:java并发
Java多线程及并发
进程:它是内存中的一段独立的空间。 线程:位于进程中,负责当前进程中的某个具备独立运行资格的空间。 进程是负责整个程序的运行,而线程是程序中具体的某个独立功能的运行。一个进程中至少应该有一个线程。 多线程:在一个进程中,…
Java 锁优化
一、重量级锁 Java中,Synchronized是通过对象内部的一个叫做监视器锁(monitor)来实现的。但是监视器锁本质又是依赖于底层的操作系统的Mutex Lock来实现的。而操作系统实现线程之…
Java NIO 和 Cindy
一、首先讲讲 Java NIO 的原理: java io包提…
Java 技术体系图
Java 程序员 高级特性 反射、泛型、注释符、自动装箱和拆箱、枚举类、可变 参数、可变返回类型、增强循环、静态导入 核心编程 IO、多线程、实体类、 集合类、正则表达式、 XML 和属性文件 图形编程 AWT(Java…
java锁
一、synchronized 这货可以锁对象,锁变量,锁方法,锁代码,好像什么都能锁,缺点就是如果…
Java分布式锁三种实现方案
方案一:数据库乐观锁 乐观锁通常实现基于数据版本(version)的记录机制实现的,比如有一张红包表(t_bonus),有一个字段(left_count)记录礼物的剩余个数,用户每领取一个奖品,对应的left_count…
JUC下的CopyOnWriteArrayList理解
一、ArrayList集合迭代时修改元素 1.普通ArrayList集合进行操作时: @Test public void test(){ ArrayList<Integer> list = new Array…
JUC代码浅析[4]——基于AQS的信号量Semaphore
JUC代码浅析[4]——基于AQS的信号量Semaphore Semaphore是基于AQS共享模式实现的计数信号量,它维护一个资源一个时期内最多…
JUC之各种锁的使用:CountDownLatch,CyclicBarrier,ReadWriteLock,Semaphore
CountDownLatch CountDownLatch的典型使用环境是:确保某个操作在其需要的一个多线程操作完成后执行。比如说赛跑者必须等发令枪响。await是阻塞,countDown是倒计,构造函数中指定初始值。只…
【好记性不如烂笔头】死锁之java代码
死锁: 是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程…
Java线程锁,synchronized、wait、notify详解
(原) JAVA多线程这一块有点绕,特别是对于锁,对锁机制理解不清的话,程序出现了问题也很难找到原因,在此记录一下线程的执行以及各种锁。 1、JAVA中,每个对象有且只有一把锁(lock),也叫监视器(monitor)。…