上一页 1 ··· 97 98 99 100 101 102 103 104 105 ··· 111 下一页
摘要: 一、概念介绍(一)volatile关键字 Java 因为指令重排序,优化我们的代码,让程序运行更快,也随之带来了多线程下,指令执行顺序的不可控。 1.volatile关键字的作用: 内存可见性,修饰的变量发生改变之后对所有线程立即可见禁止指令重排序volatile的底层是通过内存屏障实现的,第一个作 阅读全文
posted @ 2021-06-18 22:48 hanease 阅读(364) 评论(0) 推荐(1)
摘要: 关于线程和线程池的学习,我们可以从以下几个方面入手: 第一,什么是线程,线程和进程的区别是什么 第二,线程中的基本概念,线程的生命周期 第三,单线程和多线程 第四,线程池的原理解析 第五,常见的几种线程池的特点以及各自的应用场景 一、 线程,程序执行流的最小执行单位,是行程中的实际运作单位,经常容易 阅读全文
posted @ 2021-06-18 22:32 hanease 阅读(465) 评论(0) 推荐(0)
摘要: 学习BlockingQueue之LinkedBlockingQueue实现原理 一:概念 LinkedBlockingQueue是一个用链表实现的有界阻塞队列。此队列的默认和最大长度为 Integer.MAX_VALUE。此队列按照先进先出的原则对元素进行排序。 与ArrayBlockingQueu 阅读全文
posted @ 2021-06-18 22:22 hanease 阅读(178) 评论(0) 推荐(0)
摘要: 生产者-消费者ArrayBlockingQueue是一个实现了BlockingQueue接口的类,其可以很方便的实现生产者-消费者模式。用法如下: class Producer implements Runnable { private final BlockingQueue queue; Prod 阅读全文
posted @ 2021-06-18 22:19 hanease 阅读(53) 评论(0) 推荐(0)
摘要: 在Java的并发包中,存在着许多高效的并发工具类,它优于synchronized关键字,在JDK中提供了一个ConcurrentLinkedQueue工具类实现了高效的并发读写工具类,该工具类具有很高效的性能,因此,本片文章笔者将通过解读ConcurrentLinkedQueue源码的方式探究该数据 阅读全文
posted @ 2021-06-18 22:11 hanease 阅读(126) 评论(0) 推荐(0)
摘要: 并发阻塞队列和非阻塞队列详解 在并发队列上JDK提供了两套实现,一个是以ConcurrentLinkedQueue为代表的高性能队列非阻塞,一个是以BlockingQueue接口为代表的阻塞队列,无论哪种都继承自Queue。 队列遵循先进先出,后进后出的原则。 阻塞式队列与非阻塞队列的区别: 阻塞式 阅读全文
posted @ 2021-06-18 21:55 hanease 阅读(455) 评论(0) 推荐(0)
摘要: 1.控制并发线程数的Semaphore Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,保证合理的使用公共资源。 线程可以通过acquire()方法来获取信号量的许可,当信号量中没有可用的许可的时候,线程阻塞,直到有可用的许可为止。线程可以通过release() 阅读全文
posted @ 2021-06-17 23:03 hanease 阅读(122) 评论(0) 推荐(0)
摘要: 1.CyclicBarrier 字面意思是可循环(Cyclic)使用的屏障(Barrier)。它要做的事情是让一组线程到达一个屏障(同步点)时被阻塞,直到最后一个线程到达屏障时候,屏障才会开门。所有被屏障拦截的线程才会运行。 2.常用的方法: CyclicBarrier(int parties) 创 阅读全文
posted @ 2021-06-17 23:02 hanease 阅读(494) 评论(0) 推荐(0)
摘要: CountDownLatch 是一个同步工具类,允许一个线程或者多个线程等待其他线程完成操作,再执行。 CountDownLatch(int count) 构造一个用给定计数初始化的 CountDownLatch。 // 使当前线程在锁存器倒计数至零之前一直等待,除非线程被中断。 void awai 阅读全文
posted @ 2021-06-17 22:58 hanease 阅读(451) 评论(0) 推荐(0)
摘要: 要点解说ReentrantLock在并发情况下只允许单个线程执行受保护的代码,而在大部分应用中都是读多写少,所以,如果使用ReentrantLock实现这种对共享数据的并发访问控制,将严重影响整体的性能。ReentrantReadWriteLock中提供的读取锁(ReadLock)可以实现并发访问下 阅读全文
posted @ 2021-06-17 22:43 hanease 阅读(110) 评论(0) 推荐(0)
上一页 1 ··· 97 98 99 100 101 102 103 104 105 ··· 111 下一页