• Java - “JUC”锁

    时间:2024-01-17 14:10:01

    【Java并发编程实战】-----“J.U.C”:锁,lock在java中有两种方法实现锁机制,一种是在前一篇博客中(【java7并发编程实战】-----线程同步机制:synchronized)介绍的synchronized,而另一种是比synchronized更加强大和领过的Lock。Lock确保...

  • JUC——线程同步锁(LockSupport阻塞原语)

    时间:2024-01-12 15:49:03

    java.util.concurrent.locks.LockSupport这个是一个独立的类,这个类的主要功能是用来解决Thread里面提供的suspend()(挂起线程)、resume()(恢复运行)方法,这个两个方法的本质上会存在有死锁的嫌疑,所以从JDK1.4开始将其就已经列为不建议使用的方...

  • JUC学习笔记--从阿里Java开发手册学习线程池的正确创建方法

    时间:2024-01-09 14:41:32

    前言最近看阿里的 Java开发手册,上面有线程池的一个建议:【强制】线程池不允许使用 Executors 去创建,而是通过 ThreadPoolExecutor 的方式,这样的处理方式让写的同学更加明确线程池的运行规则,规避资源耗尽的风险。结合最近面试的经历,发现这条建议还是十分有用的,因为自己经常...

  • Java多线程系列--“JUC原子类”01之 框架

    时间:2024-01-06 13:33:26

    根据修改的数据类型,可以将JUC包中的原子操作类可以分为4类。1. 基本类型: AtomicInteger, AtomicLong, AtomicBoolean ;2. 数组类型: AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray ;...

  • java多线程系类:JUC原子类:03之AtomicLongArray原子类

    时间:2023-12-28 18:21:53

    概要AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray这3个数组类型的原子类的原理和用法相似。本章以AtomicLongArray对数组类型的原子类进行介绍。内容包括:AtomicLongArray介绍和函数列表AtomicLongAr...

  • java多线程系类:JUC线程池:04之线程池原理(三)(转)

    时间:2023-12-28 18:17:28

    转载请注明出处:http://www.cnblogs.com/skywang12345/p/3509960.html本章介绍线程池的生命周期。在"Java多线程系列--“基础篇”01之 基本概念"中,我们介绍过,线程有5种状态:新建状态,就绪状态,运行状态,阻塞状态,死亡状态。线程池也有5种状态;然...

  • java多线程系类:JUC线程池:05之线程池原理(四)(转)

    时间:2023-12-28 17:58:08

    概要本章介绍线程池的拒绝策略。内容包括:拒绝策略介绍拒绝策略对比和示例转载请注明出处:http://www.cnblogs.com/skywang12345/p/3512947.html拒绝策略介绍线程池的拒绝策略,是指当任务添加到线程池中被拒绝,而采取的处理措施。当任务添加到线程池中之所以被拒绝,...

  • Java多线程系列--“JUC原子类”02之 AtomicLong原子类

    时间:2023-12-20 21:42:07

    概要AtomicInteger, AtomicLong和AtomicBoolean这3个基本类型的原子类的原理和用法相似。本章以AtomicLong对基本类型的原子类进行介绍。内容包括:AtomicLong介绍和函数列表AtomicLong源码分析(基于JDK1.7.0_40)AtomicLong示...

  • JUC学习笔记--JUC中并发工具类

    时间:2023-12-20 18:35:21

    JUC中并发工具类CountDownLatchCountDownLatch是我目前使用比较多的类,CountDownLatch初始化时会给定一个计数,然后每次调用countDown() 计数减1,当计数未到达0之前调用await() 方法会阻塞直到计数减到0;使用场景:多用于划分任务由多个线程执行,...

  • java高并发系列 - 第25天:掌握JUC中的阻塞队列

    时间:2023-12-09 14:56:53

    这是java高并发系列第25篇文章。环境:jdk1.8。本文内容掌握Queue、BlockingQueue接口中常用的方法介绍6中阻塞队列,及相关场景示例重点掌握4种常用的阻塞队列Queue接口队列是一种先进先出(FIFO)的数据结构,java中用Queue接口来表示队列。Queue接口中定义了6个...

  • java高并发系列 - 第13天:JUC中的Condition对象

    时间:2023-12-09 14:53:10

    本文目标:synchronized中实现线程等待和唤醒Condition简介及常用方法介绍及相关示例使用Condition实现生产者消费者使用Condition实现同步阻塞队列Object对象中的wait(),notify()方法,用于线程等待和唤醒等待中的线程,大家应该比较熟悉,想再次了解的朋友可...

  • java高并发系列 - 第23天:JUC中原子类,一篇就够了

    时间:2023-12-09 14:35:24

    这是java高并发系列第23篇文章,环境:jdk1.8。本文主要内容JUC中的原子类介绍介绍基本类型原子类介绍数组类型原子类介绍引用类型原子类介绍对象属性修改相关原子类预备知识JUC中的原子类都是都是依靠volatile、CAS、Unsafe类配合来实现的,需要了解的请移步:volatile与Jav...

  • java并发编程工具类JUC第四篇:LinkedBlockingQueue链表队列

    时间:2023-12-06 14:22:50

    在之前的文章中已经为大家介绍了java并发编程的工具:BlockingQueue接口、ArrayBlockingQueue、DelayQueue。LinkedBlockingQueue 队列是BlockingQueue接口的实现类,所以它具有BlockingQueue接口的一切功能特点。Linked...

  • 《The java.util.concurrent Synchronizer Framework》 JUC同步器框架(AQS框架)原文翻译

    时间:2023-12-04 22:45:13

    一、论文简介闲来无事,看看源码,发现了一篇JDK作者的论文《The java.util.concurrent Synchronizer Framework》主要描述了作者对AbstractQueuedSynchronizer同步器框架的设计和实现。权威性毋庸置疑!自然需要拜读一下,配上中文翻译,希望...

  • JUC同步器框架

    时间:2023-12-04 22:40:47

    The java.util.concurrent Synchronizer Framework前提AQS(java.util.concurrent.locks.AbstractQueuedSynchronizer)是并发编程大师Doug Lea创作的用来构建锁或者其他同步组件(信号量、事件等)的基础...

  • 学习笔记 07 --- JUC集合

    时间:2023-12-03 14:29:04

    学习笔记 07 --- JUC集合在讲JUC集合之前我们先总结一下Java的集合框架,主要包含Collection集合和Map类。Collection集合又能够划分为LIst和Set。1. List的实现类主要有: LinkedList, ArrayList, Vector, Stack。(01) ...

  • 【JUC】JDK1.8源码分析之CyclicBarrier(四)

    时间:2023-11-16 18:05:23

    一、前言有了前面分析的基础,现在,接着分析CyclicBarrier源码,CyclicBarrier类在进行多线程编程时使用很多,比如,你希望创建一组任务,它们并行执行工作,然后在进行下一个步骤之前等待,直至所有的任务都完成,和join很类似,下面,开始分析源码。二、CyclicBarrier数据结...

  • Java多线程系列--“JUC集合”09之 LinkedBlockingDeque

    时间:2023-11-13 11:23:31

    概要本章介绍JUC包中的LinkedBlockingDeque。内容包括:LinkedBlockingDeque介绍LinkedBlockingDeque原理和数据结构LinkedBlockingDeque函数列表LinkedBlockingDeque源码分析(JDK1.7.0_40版本)Linke...

  • Java多线程系列--“JUC集合”10之 ConcurrentLinkedQueue

    时间:2023-11-13 11:08:16

    概要本章对Java.util.concurrent包中的ConcurrentHashMap类进行详细的介绍。内容包括:ConcurrentLinkedQueue介绍ConcurrentLinkedQueue原理和数据结构ConcurrentLinkedQueue函数列表ConcurrentLinke...

  • (三)juc高级特性——虚假唤醒 / Condition / 按序交替 / ReadWriteLock / 线程八锁

    时间:2023-11-12 10:09:36

    8. 生产者消费者案例-虚假唤醒参考下面生产者消费者案例:/* * 生产者和消费者案例 */public class TestProductorAndConsumer { public static void main(String[] args) { Clerk clerk =...