随笔分类 -  java 多线程

java phaser
摘要:Phaser java7中引入了一种新的可重复使用的同步屏障,称为移相器Phaser. Phaser拥有与CyclicBarrier和CountDownLatch类似的功劳.但是这个类提供了更加灵活的应用.CountDownLatch和CyclicBarrier都是只适用于固定数量的参与者.移相器适 阅读全文

posted @ 2022-01-25 22:20 胡子就不刮 阅读(516) 评论(0) 推荐(0) 编辑

java cyclicbarrier
摘要:CyclicBarrier 的字面意思是可循环使用(Cyclic)的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活 这个屏障之所以用循环修饰,是因为在所有的线程释放彼此之后,这个屏障 阅读全文

posted @ 2022-01-20 19:42 胡子就不刮 阅读(240) 评论(0) 推荐(0) 编辑

java countdownlatch
摘要:1.背景: countDownLatch是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier、Semaphore、concurrentHashMap和BlockingQueue 存在于java.util.cucurrent包下 2.概念 countDownLatch这个类使 阅读全文

posted @ 2022-01-20 16:56 胡子就不刮 阅读(148) 评论(0) 推荐(0) 编辑

java locksupport
摘要:LockSupport LockSupport是一个线程阻塞工具类,所有的方法都是静态方法,可以让线程在任意位置阻塞,当然阻塞之后肯定得有唤醒的方法 接下面我来看看LockSupport有哪些常用的方法。主要有两类方法:park和unpark public static void park(Obje 阅读全文

posted @ 2022-01-20 15:17 胡子就不刮 阅读(526) 评论(0) 推荐(0) 编辑

java volatile
摘要:可见性: volatile的功能就是被修饰的变量在被修改后可以立即同步到主内存,被修饰的变量在每次是用之前都从主内存刷新。本质也是通过内存屏障来实现可见性 写内存屏障(Store Memory Barrier)可以促使处理器将当前store buffer(存储缓存)的值写回主存读内存屏障(Load 阅读全文

posted @ 2021-11-21 21:02 胡子就不刮 阅读(83) 评论(0) 推荐(0) 编辑

java synchronized1
摘要:认识synchronized之前我们先看看其他的相关知识: 用户态与内核态 JDK早期,synchronized 叫做重量级锁(用户态), 因为申请锁资源必须通过kernel, 系统调用 CAS Compare And Swap (Compare And Exchange) / 自旋 / 自旋锁 / 阅读全文

posted @ 2021-11-21 20:52 胡子就不刮 阅读(59) 评论(2) 推荐(0) 编辑

java threadLocal
摘要:ThreadLocal的基本使用 创建一个ThreadLocal对象: private ThreadLocal<Integer> localInt = new ThreadLocal<>(); 上述代码创建一个localInt变量,由于ThreadLocal是一个泛型类,这里指定了localInt的 阅读全文

posted @ 2021-09-25 23:40 胡子就不刮 阅读(69) 评论(0) 推荐(0) 编辑

java synchronized2
摘要:用户态与内核态 JDK早期,synchronized 叫做重量级锁(用户态),因为申请锁资源必须通过kernel(内核态), 系统调用 CAS Compare And Swap (Compare And Exchange) / 自旋 / 自旋锁 / 无锁 (无重量锁) 因为经常配合循环操作,直到完成 阅读全文

posted @ 2021-08-15 11:39 胡子就不刮 阅读(75) 评论(0) 推荐(0) 编辑

java 线程池
摘要:ThreadPoolExecutor与ForkJoinPool区别在于前者每个线程共享队列,后者每个线程有各自的队列 一 入参 corePoolSize: 线程池核心线程数,当初始化线程池时,会创建核心线程进入等待状态,即使它是空闲的,核心线程也不会被摧毁,从而降低了任务一来时要创建新线程的时间和性 阅读全文

posted @ 2021-08-10 20:56 胡子就不刮 阅读(983) 评论(0) 推荐(0) 编辑

Java GC如何判断对象是否为垃圾
摘要:查找内存中不再使用的对象 引用计数法 引用计数法就是如果一个对象没有被任何引用指向,则可视之为垃圾。这种方法的缺点就是不能检测到环的存在。 2.根搜索算法 根搜索算法的基本思路就是通过一系列名为”GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径称为引用链(Referenc 阅读全文

posted @ 2017-01-10 10:33 胡子就不刮 阅读(6088) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示