Java 并发编程 第2页

Java 并发编程,包括 Java 并发核心理论知识,JUC源码分析,囊括 Java 并发编程方方面面

JAVA并发容器源码分析【一】开篇

chenssy阅读(1717)评论(0)赞(1)

文章首发于:clawhub.club 准备新写个文集《JAVA并发容器源码分析》,套路还是采用:先翻译源码,再分析技术实现。 写几个常用到的并发容器:ConcurrentHashMap、CopyOnWriteArrayList、Linked...

JAVA高并发系列

chenssy阅读(5159)评论(0)赞(10)

【并发编程挑战】上下文切换 【并发编程挑战】死锁 【JMM】线程通信机制之共享内存与消息传递 【JMM】内存模型之结构抽象 【JMM】内存模型之重排序 【JMM】内存模型之顺序一致性 【JMM】内存模型之多线程内存可见性-happens-b...

Disruptor简单使用

chenssy阅读(1047)评论(0)赞(0)

文章首发于:clawhub.club 在定位项目中内存泄漏问题时,发现RingBuffer占用内存过大,这个是在使用log4j2时引入的jar,以前只知道必须使用这个Disruptor才可以用异步日志, 但是并不清楚Disruptor的一些...

高并发系统限流操作之令牌桶实现可变TPS控制

chenssy阅读(2197)评论(0)赞(0)

文章首发于:clawhub.club 年前有个需求,批量请求供应商API,要有限流操作,并支持TPS与并发数可配置,那时候简单的查了查资料,任务结束就过去了,最近又有个限流的小需求,所以又翻出了以前的代码。 本次简单记录一下令牌桶的实现: ...

JAVA并发工具设计套路

chenssy阅读(843)评论(0)赞(0)

文章首发于:clawhub.club 在学习JAVA并发工具时,分析JUC下的源码,发现有三个利器:状态、队列、CAS。 状态 一般是state属性,如AQS源码中的状态,是整个工具的核心,一般操作的执行都要看当前状态是什么, 由于状态是多...

【J.U.C】线程池之实现原理

chenssy阅读(991)评论(0)赞(0)

文章首发于:clawhub.club 线程池状态 线程池的内部状态由AtomicInteger修饰的ctl表示,其高3位表示线程池的运行状态,低29位表示线程池中的线程数量: 具体看代码注释。 /** * The main pool con...