concurrent包是常用多线程的相关包,最近由于开发sdn程序,对于多线程使用比以前多了很多,现简单总结下。 第一类 原子类:用在多个线程共同操作一个计数的情况 AtomicLong AtomicInte…
分类:java并发
java笔记整理
基本概念 操作系统中 heap 和 stack 的区别 什么是基于注解的切面实现 什么是 对象/关系 映射集成模块 什么是 Java 的反射机制 什么是 ACID BS与CS的联系与区别 Cookie 和 …
深入java并发包源码(三)AQS独占方法源码分析
深入java并发包源码(一)简介 深入java并发包源码(二)AQS的介绍与使用 深入java并发包源码(三)AQS独占方法源码分析 AQS 的实现原理 学完用 AQS 自定义一个锁以后,我们可以来看一下刚刚使用过的方法…
Java并发编程笔记之Semaphore信号量源码分析
JUC 中 Semaphore 的使用与原理分析,Semaphore 也是 Java 中的一个同步器,与 CountDownLatch 和 CycleBarrier 不同在于它内部的计数器是递增的,那么,Semaphor…
【源码分析】JUC一Exchanger
Exchanger是一种线程间安全交换数据的机制。当线程A调用Exchange对象的exchange()方法后,他会进入阻塞状态,直到线程B也调用了exchange()方法,然后以线程安全的方式交换数据,之后线程A和B继…
juc 下的集合(概括)
做后台服务器开发已有好几年,慢慢的对多线程和集合有了一些理解,是时候抽点时间来整理下这方面的知识了。 &nb…
JUC学习之前言
JUC学习 Jdk1.5之后加入了java.util.concurrent包,在此包中增加了在并发编程中很常用的工具类,用于定义类似于线程的自定义子系统,包括线程池,异步IO 和轻量级任务框架;还提供了设计用于多线程上下…
java.util.concurrent.Executors和java.util.concurrent.ThreadPoolExecutor
在线JDK地址: 中文: http://tool.oschina.net/apidocs/apidoc?api=jdk-zh 英文: http://tool.oschin…
JAVA线程的同步与锁
一、同步问题提出 线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏。 例如:两个线程ThreadA、ThreadB都操作同一个对象Foo对象,并修改Foo对象上的数据。 pub…
JAVA 并发:CLH 锁 与 AbstractQueuedSynchronizer
首先向Doug Lea致敬。 CLH 以下是CLH锁的一个简单实现: class SimpleCLHLock { /** * initialized with a dummy node */ private Node d…
java锁名词解释
一.公平锁/非公平锁(FairSync/NonfairSync): 公平锁: 公平锁是指多个线程按照申请锁的顺序来获取锁。(先尝试获取锁, 失败进队列) 非公平锁: 非公平锁是指多个线程获取锁的顺序并不是按照申请锁的…
Java 中每个对象都有个锁
在Java语言中,每一个对象有一把锁。线程可以使用synchronized关键字来获取对象上的锁。synchronized关键字可应用在方法级别(粗粒度锁)或者是代码块级别(细粒度锁)。 java允许多线程…