随笔分类 -  并发编程

摘要:本节解析要点如下: 1、线程池的执行原理 2、线程是如何复用的 3、核心线程数如何一直保持、最大线程数如何释放 4、线上环境线程池应该定义多大 一 线程池初始化原理 可参考博客:https://www.jianshu.com/p/23cb8b903d2c 1 public void execute( 阅读全文
posted @ 2020-06-08 23:49 《船长》 阅读(298) 评论(0) 推荐(0)
摘要:本章重点讲解内容如下: 1、什么是CLH同步队列 2、为什么需要CLH同步队列 3、CLH同步队列原理(即队列如何入队、出队) 一 什么是CLH队列 AbstractQueuedSynchronizer类文件开头,作者Doug Lea一大篇幅来介绍CLH队列,大意如下: CLH队列是一个FIFO的双 阅读全文
posted @ 2020-06-05 00:21 《船长》 阅读(2197) 评论(0) 推荐(0)
摘要:一 什么是Semaphore、Semaphore用来做什么 semaphore是计数信号量,可用于多线程并发执行时,限制获取资源的线程数量。常用场景为:限流。 二 Semaphore用法 1 public class SemaphoreTest { 2 3 public static void ma 阅读全文
posted @ 2020-06-02 23:42 《船长》 阅读(247) 评论(0) 推荐(0)
摘要:本章要点详细介绍以下几个问题: 1、为什么需要内存模型 2、什么是内存模型 3、内存模型解决什么问题 1、为什么需要内存模型 说道内存模型不得不首先说下目前的计算机组成原理,目前主流的计算机都是冯诺依曼机。他的cpu缓存存原理如下图: 当有了多级缓存后,CPU要读取一个数据时,首先从一级缓存中查找, 阅读全文
posted @ 2020-05-14 00:01 《船长》 阅读(172) 评论(0) 推荐(0)