在java.util.concurrent中给我们提供了很多的并发工具,通过这些并发工具我们能很简单的实现许多强大...[作者空间]
创建线程的三种方法1)继承Thread类,重写run方法2)实现Runnable接口创建线程3)使用Callabl...[作者空间]
在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下: 公平锁/非公...[作者空间]
谈到多线程就不得不谈到Synchronized,很多同学只会使用,缺不是很明白整个Synchronized的底层实...[作者空间]
本专栏专注分享大型Bat面试知识,后续会持续更新,喜欢的话麻烦点击一个关注 volatile关键字与synchro...[作者空间]
java 生态圈。 几乎每个使用 java开发的工具、软件基础设施、高性能开发库都在底层使用了 sun.misc....[作者空间]
在并发编程中,我们经常用到非阻塞的模型,在之前的多线程的三种实现中,不管是继承Thread类还是实现Runnabl...[作者空间]
Java 线程在运行的生命周期中的指定时刻,只可能处于下面 6 种不同状态的其中一个(图源《Java 并发编程艺术...[作者空间]
为了引出 ConcurrentSkipListMap,先来简单理解下什么是跳表。 对于单链表,即使链表是有序的,如...[作者空间]
多线程主要技术进程与线程线程状态阻塞状态分类线程的调度常用函数说明Thread类方法创建线程线程池线程安全向线程传...[作者空间]
锁的分类介绍 乐观锁与悲观锁 锁的一种宏观分类是乐观锁与悲观锁。乐观锁与悲观锁并不是特定的指哪个锁(Java 中也...[作者空间]
为什么要使用线程池? 线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后启动这些...[作者空间]
在并发的情况下使用和调度一个类,这个类总是能表现出正确的行为,那么我们就说这个类是并发安全的类。 类线程安全的表现...[作者空间]
我们都知道在使用CAS也就是使用compareAndSet(current,next)方法进行无锁自加或者更换栈的...[作者空间]
CAS:Compare and Swap,比较并交换。它最底层用的是CUP并发原语CAS有3个操作数,内存地址中的...[作者空间]
本文为synchronized系列第二篇。主要内容为分析偏向锁的实现。 偏向锁的诞生背景和基本原理在上文中已经讲过...[作者空间]
关于synchronized的底层实现,网上有很多文章了。但是很多文章要么作者根本没看代码,仅仅是根据网上其他文章...[作者空间]
1、并发编程三要素? 1)原子性 原子性指的是一个或者多个操作,要么全部执行并且在执行的过程中不被其他操作打断,要...[作者空间]
线程的启动过程大家都非常熟悉,但是如何终止一个线程,我相信绝大部分人在面试的时候被问到这个问题时,也会不知所措,不...[作者空间]
引言 HotSpot虚拟机团队在1.5 -> 1.6版本演进中,进行了大量的锁优化技术,相应的jdk6并发包也推出...[作者空间]