首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
并发
订阅
Ns_
更多收藏集
微信扫码分享
微信
新浪微博
QQ
18篇文章 · 0订阅
Java CAS 原理剖析
在Java并发中,我们最初接触的应该就是synchronized关键字了,但是synchronized属于重量级锁,很多时候会引起性能问题,volatile也是个不错的选择,但是volatile不能保证原子性,只能在某些场合下使用。 像synchronized这种独占锁属于悲观…
面试:为了进阿里,死磕了ConcurrentHashMap源码和面试题(一)
在平时中集合使用中,当涉及多线程开发时,如果使用HashMap可能会导致死锁问题,使用HashTable效率又不高。而ConcurrentHashMap在保持同步同时并发效率比较高,ConcurrentHashmap是最好的选择,那面试中也会被常常问到,那可能的问题是: JDK…
Java程序员面试必备:Volatile全方位解析
volatile关键字是Java虚拟机提供的的最轻量级的同步机制,它作为一个修饰符出现,用来修饰变量,但是这里不包括局部变量哦。我们来看个demo吧,代码如下: 可以发现线程t2,虽然把stop设置为true了,但是线程t1对t2的stop变量视而不可见,因此,它一直在死循环r…
CAS原理深度解析
1. CAS CAS:Compare and Swap, 翻译成比较并交换。 java.util.concurrent包中借助CAS实现了区别于synchronouse同步锁的一种乐观锁。 本文先从CAS的应用说起,再深入原理解析。 2. CAS应用 CAS有3个操作数,内存值…
2018汇总Java并发核心篇
2018汇总Java并发核心篇
Java并发编程:Java线程池核心ThreadPoolExecutor的使用和原理分析
线程是并发编程的基础,前面的文章里,我们的实例基本都是基于线程开发作为实例,并且都是使用的时候就创建一个线程。这种方式比较简单,但是存在一个问题,那就是线程的数量问题。 假设有一个系统比较复杂,需要的线程数很多,如果都是采用这种方式来创建线程的话,那么就会极大的消耗系统资源。首…
Java并发-锁的应用与原理,看这一篇就够了
通过对锁原理的分析,重点分析ReentrantLock和ReentrantReadWriteLock的源码,通过锁的实现更深入的理解AQS。 本文很长,不要指望读10分钟以内看懂锁的原理。需要结合源码反复体会,才会把这块知识吃透。 在本文的开篇,先提出问题,我们所有的研究,都为…
《提升能力,涨薪可待》-Java并发之AQS全面详解
AQS全称AbstractQueuedSynchronizer,即抽象的队列同步器,是一种用来构建锁和同步器的框架。 AQS 解决了在实现同步器时涉及的大量细节问题,例如自定义标准同步状态、FIFO 同步队列。 基于 AQS 来构建同步器可以带来很多好处。它不仅能够极大地减…
CompletableFuture 实现异步计算
在Markdown的语法中,<u>下划线</u>中的文字会被解析器加上下划线,为了不影响阅读,本文中JDK文档涉及到<U>都会替换为<N>,请各位注意。 Java 1.8 新增加的 CompletableFuture 类内部是使用 ForkJoinPool 来实现的,Compl…
并发编程导论
随着硬件性能的迅猛发展与大数据时代的来临,并发编程日益成为编程中不可忽略的重要组成部分。简单定义来看,如果执行单元的逻辑控制流在时间上重叠,那它们就是并发(Concurrent)的。并发编程复兴的主要驱动力来自于所谓的“多核危机”。正如摩尔定律所预言的那样,芯片性能仍在不断提高…