JUC

JUC并发编程基础篇第一章之进程/并发/异步的概念[理解基本概念]

1. 进程和线程的概念 进程: 系统正在运行的一个应用程序;程序一旦运行就是一个进程;进程是资源分配的最小单位 线程: 是进程的实际运行单位;一个人进程可以并发控制多个线程,每条线程并行执行不同的任务 区别: 进程基本上相互独立的;而线程存在于进程内,是进程的一个子集 进程拥有共享的资源,如内存空间 ......
概念 进程 基础 JUC

【Java 并发】【九】【AQS】【一】什么是AQS?为什么说它是JUC基础框架?

1 前言 这节我们来开始看 AQS,这个东西可以说是搞Java的都知道的,本节会介绍一下AQS以及它提供的基本机制,后面再对AQS提供的每一个机制一个个深入的剖析。 2 什么是AQS?(同步器基础框架) AQS叫做抽象队列同步器(AbstractQueuedSynchronizer),它是一个实现了 ......
AQS 框架 基础 Java JUC

JUC 简介

1. JUC 简介 在 Java 5.0 提供了 java.util.concurrent(简称JUC)包,在此包中增加了在并发编程中很常用的工具类,用于定义类似于线程的自定义子系统,包括线程池,异步 IO 和轻量级任务框架;还提供了设计用于多线程上下文中的 Collection 实现等; 2. v ......
简介 JUC

【Java 并发】【八】【Atomic】【一】JUC下的Atomic原子类体系概览

1 前言 这节我们就开始看看Atomic原子类系列,JUC包下提供的原子类底层的实现原理基本都是差不多的,都是基于volatile和CAS操作来保证线程安全的,我们后续会着重分析几个类。 2 概览 我们看下JUC下边都有哪些原子类: 看上面的图形,我们使用红色圈中的那些,就是我们要着重讨论的,一共分 ......
Atomic 概览 原子 体系 Java

【打怪升级】【juc】关于LockSupport

通过juc下LockSupport,可以达到阻塞和唤醒线程的操作 LockSupport LockSupport是juc下一个线程阻塞唤醒的工具类。它的主要方法有: 每个使用LockSupport的线程,会有一个许可;调用park会立即返回,否则会被阻塞。 如果许可不可用,则可以调用unpark供其 ......
LockSupport juc

【打怪升级】【juc】关于aqs

aqs,它是抽象队列同步器AbstractQueuedSynchronizer ,是juc包下的核心组件。 关于aqs aqs,是AbstractQueuedSynchronizer 的简称,位于juc包下。在jdk1.5后,提供了针对并发处理的一些工具。 通过aqs,其实它提供了实现锁和线程同步机 ......
juc aqs

JavaSE——多线程&JUC(上)

多线程 简单了解多线程 是指从软件或者硬件上实现多个线程并发执行的技术。 具有多线程能力的计算机因有硬件支持而能够在同一时间执行多个线程,提升性能。 并发和并行 并行:在同一时刻,有多个指令在多个CPU上同时执行。 并发:在同一时刻,有多个指令在单个CPU上交替执行。 进程和线程 进程:是正在运行的 ......
线程 JavaSE JUC amp

15.AQS的今生,构建出JUC的基础

大家好,我是王有志。今天我们接着学习AQS的部分,这次我们深入Doug Lea的设计,来探究AQS是如何通过“变种”CLH构建出JUC框架基础的。 ......
基础 AQS JUC 15

JUC

概念:java.util.concurrent(简称JUC)包,在此包中增加了在并发编程中很常用的工具类。 进程和线程:进程是一个独立应用程序;线程一个进程中有若然个线程,线程就是分配资源的最小单位。 并发与并行:并发是多个线程去访问同一个资源;并行是多项任务一起执行最后汇总。 sleep、wait ......
JUC

juc思维导图

10% 但不允许重入 jdk1.8对ReentrantReadWriteLock的优化 读的时候允许写线程介入,若写线程操作成功,则乐观读锁tryOptimisticRead升级为悲观读锁readLock StampedLock采取乐观获取读锁 所以,在获取乐观读锁后,还需要对结果进行校验。 解决锁 ......
思维 juc

JUC源码学习笔记8——ConcurrentHashMap源码分析1 如何实现低粒度锁的插入,如何实现统计元素个数,如何实现并发扩容迁移

源码基于jdk1.8 这一片主要讲述ConcurrentHashMap如何实现低粒度锁的插入,如何实现统计元素个数,如何实现并发扩容迁移 系列文章目录和关于我 一丶ConcurrentHashMap概述 支持高并发读写的哈希表,ConcurrentHashMap中每一个方法都是线程安全的,并且读数据 ......

限流器算法实现(JUC原子类使用实践)

系列文章目录和关于我 一丶限流器存在的意义 在高并发系统中,出于系统保护角度考虑,通常会对流量进行限流。 限流*的目的是在遇到流量高峰期或者流量突增(流量尖刺)时,通过对流量速率进行限制,当达到限制速率时,可以拒绝服务(定向到错误页或告知资源没有了)、排队或等待(比如秒杀、评论、下单)、降级(返回兜 ......
原子 算法 JUC

聊聊JUC包下的底层支撑类-AbstractQueuedSynchronizer(AQS)

聊聊JUC包下的底层支撑类-AbstractQueuedSynchronizer(AQS) juc包下的一堆并发工具类是我们日常开发特别是面试中常被拿来问的八股文之一,为了工作也好,为了面试也罢,今天开始想尝试着把这些给大伙描述明白,所以开始写下这篇博文,如果后续要涉及每个常用类的源码的话可能会是一 ......
AbstractQueuedSynchronizer 底层 JUC AQS

JUC源码学习笔记5——1.5w字和你一起刨析线程池ThreadPoolExecutor源码,全网最细doge

源码基于JDK8 文章1.5w字,非常硬核 系列文章目录和关于我 一丶从多鱼外卖开始 话说,王多鱼给好友胖子钱让其投资,希望亏得血本无归。胖子开了一个外卖店卖国宴,主打高端,外卖小哥都是自己雇佣,并且开迈巴赫送外卖。最开始胖子觉得这么贵的外卖,就雇佣100个外卖员(核心线程)够了,并购买了100台迈 ......

JUC源码学习笔记7——FutureTask源码解析,人生亦如是,run起来才有结果

系列文章目录和关于我 一丶我们在哪里会使用到FutureTask 基本上工作中和Future接口 打交道比较多,比如线程池ThreadPoolExecutor#sumbit方法,返回值就是一个Future(实际上基本上就是一个FutureTask)。ThreadPoolExecutor#sumbit ......
源码 FutureTask 结果 笔记 人生

一文搞懂JUC并发编程

一、JUC简介 Java5.0提供了java.util.concurrent包,简称JUC,即Java并发编程工具包。JUC更好的支持高并发任务。 具体的有以下三个包: java.util.concurrent java.util.concurrent.atomic java.util.concur ......
JUC

JUC源码学习笔记6——ReentrantReadWriteLock

系列文章目录和关于我 阅读此文需要有AQS独占和AQS共享的源码功底,推荐阅读: 1.JUC源码学习笔记1——AQS独占模式和ReentrantLock 2.JUC源码学习笔记2——AQS共享和Semaphore,CountDownLatch 一丶类结构和源码注释解读 1.ReadWriteLock ......
ReentrantReadWriteLock 源码 笔记 JUC
共137篇  :5/5页 首页上一页5下一页尾页