其实如果按照名称来说,锁大概有以下名词: 自旋锁 ,自旋锁的其他种类,阻塞锁,可重入锁 ,读写锁 ,互斥锁 ,悲观锁 ,乐观锁 ,公平锁 ,偏向锁, 对象锁,线…
分类:java并发
【Java并发编程实战】-----“J.U.C”:CyclicBarrier
在上篇博客(【Java并发编程实战】—–“J.U.C”:Semaphore)中,LZ介绍了Semaphore,下面LZ介绍CyclicBarrier。在JDK API中是这么介绍的: 一个同步辅助…
JUC学习笔记 -- (2)并发编程的3个概念 ,原子性,可见性,有序性!
并发编程中的三条性质:原子性,可见性,有序性 1.原子性 原子性:即一个操作或者多个操作 要么全部执行并且执行的过程不会被任何因素打断,要么就都不执行。即整体不可分割。 在Java中,对基本数据类型(例外就是long和d…
Java ExecutorService线程池中的小坑——关于线程池中抛出的异常处理
开发自己的项目有一段时间了,因为是个长时间跑的服务器端程序,所以异常处理显得尤为重要。 对于异常的抓取和日志(狭义上的日志)的分析一点都不能落下。 我们使用了Java自带的Executor模块,我只是稍微看了下Execu…
Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock)
Java基础-Java中的并法库之重入读写锁(ReentrantReadWriteLock) 作者:尹正…
对象级别锁 vs 类级别锁 – Java
同步针对的是多线程。同步的方法或代码块同时只能由一个线程执行。 Java支持多线程来执行。这可能会导致两个或多个线程访问同一个字段或对象。同步是一个使所有并发执行的线程同步的过程。同步避免了由于共享内存视图不一致而导致的…
Java多线程系列--“JUC锁”08之 共享锁和ReentrantReadWriteLock
概要 Java的JUC(java.util.concurrent)包中的锁包括”独占锁”和”共享锁”。在“Java多线程系列–“JUC锁”02之 互斥锁Reen…
Java多线程系列--“JUC锁”05之 非公平锁
概要 前面两章分析了”公平锁的获取和释放机制”,这一章开始对“非公平锁”的获取锁/释放锁的过程进行分析。内容包括:参考代码获取非公平锁(基于JDK1.7.0_40)释放非公平锁(基于JDK1.7.…
[转]Java并发的四种风味:Thread、Executor、ForkJoin和Actor
这篇文章讨论了Java应用中并行处理的多种方法。从自己管理Java线程,到各种更好几的解决方法,Executor服务、ForkJoin 框架以及计算中的Actor模型。 Java并发编程的4种风格:Threads,Exe…
Java中的显示锁 ReentrantLock 和 ReentrantReadWriteLock
在Java1.5中引入了两种显示锁,分别是可重入锁ReentrantLock和可重入读写锁ReentrantReadWriteLock。它们分别实现接口Lock和ReadWriteLock。(注意:synchronize…
Java 线程锁机制 -Synchronized Lock 互斥锁 读写锁
(1)synchronized 是互斥锁; (2)ReentrantLock 顾名思义 :可重入锁 (3)ReadWriteLock :读写锁 读写锁特点: a)多个读者可以同时进行读b)写者必须互斥(只允许一个写者写,…
Java的类锁和对象锁
类锁和对象锁不是同1个东西,一个是类的Class(对应的唯一的一个即这类的二进制字节码)对象的锁,1个是类的实例(!即new出的一个类的对象,一个类会有多个实例对象)的锁。也就是说:1个线程访问静态synchronize…