JUC

JUC并发编程学习笔记(一)认知进程和线程

进程和线程 进程 一个程序,如QQ.exe,是程序的集合 一个进程往往可以包含多个线程,至少包含一个 java默认有两个线程,GC垃圾回收线程和Main线程 线程:一个进程中的各个功能 java无法真正的开启线程,因为java是运行在虚拟机上的,所以只能通过C++,通过native本地方法调用C++ ......
线程 进程 笔记 JUC

《Java 并发编程的艺术》实验02-4 JUC Executor的使用

Executor 框架的使用 ThreadPoolExecutor 简介 Executor 机制实现了工作单元和执行机制的分离 ThreadPoolExecutor 实现了 Executor 接口,是 Java 线程池的根本实现类之一。它提供了更丰富的配置参数,例如核心线程数、最大线程数、线程空闲时 ......
Executor 艺术 Java JUC 02

《Java 并发编程的艺术》实验02-1 JUC 并发容器和框架的使用

JUC 并发容器和框架的使用 ConcurrentHashmap 简介 线程安全的哈希表,Hashmap 在 多线程环境下的替代 实验 实验目的:了解并发容器 ConcurrentHashmap 的使用方法 实验内容: 基础:直接使用 Thread 实现 多个线程同时往ConcurrentHashM ......
容器 框架 艺术 Java JUC

《Java 并发编程的艺术》实验02-2 JUC 原子操作类的使用

JUC 原子操作类的使用 实验目的 掌握Java原子类的使用方法,了解原子类在多线程环境下的特点和使用场景。 实验过程 导入Java原子类的库 创建AtomicInteger对象 使用原子方法对count进行操作 实验参考代码 public class AtomicExample { public ......
原子 艺术 Java JUC 02

《Java 并发编程的艺术》实验02-3 JUC 并发工具类的使用

JUC 并发工具类的使用 CountDownLatch 简介 CountDownLatch 是Java并发包中的一个基本类,它可以用来在多个线程间同步操作。 其主要功能是允许一个或多个线程等待,直到其他线程完成它们的操作后再继续执行。 CountDownLatch 是通过一个计数器实现的,计数器的初 ......
工具 艺术 Java JUC 02

JUC前置知识

JUC前置知识 JUC概述 在开发语言中,线程部分是重点,JUC是关于线程的。JUC是java.util.concurrent工具包的简称。这是一个处理线程的工具包,JDK1.5开始出现的。 线程和进程 线程和进程的概念 进程(process): 是计算机的程序关于某数据集合上的一次允许活动,是操作 ......
知识 JUC

juc个人笔记

并发一定比串行执行的速度快吗? 不一定 这是因为线程创建、销毁会消耗CPU 同时也存在上下文切换的开销,需要保护现场与恢复现场 线程本身也占用内存,一个线程占用1MB 为什么要需要多线程? 1. 为了充分利用多核cpu计算能力,实现并行计算 2. 提高程序处理数据的速度,比如实现异步化 LockSu ......
笔记 个人 juc

JUC-3

JUC-3 13、Stream流式计算 什么是Stream流式计算 大数据∶存储+计算 集合、MySQL本质就是存储东西的﹔ 计算都应该交给流来操作! 14、ForkJoin 什么是ForkJoin ForkJoin在JDK 1.7,并行执行任务!提高效率。大数据量! 大数据:Map Reduce ......
JUC

JUC工具类CountDownLatch、CyclicBarrier、Semaphore介绍

CountDownLatch:它是一种同步工具,用于控制一个或多个线程等待其他线程完成操作后再继续执行。它的作用是让某个线程等待一组操作执行完成,再继续执行自己的任务。CountDownLatch 内部有一个计数器,当计数器的值为0时,等待的线程将会被唤醒。通过 CountDownLatch 的构造 ......

一点点JUC的小姿势

1 JUC JUC就是java.util.concurrent下面的类包,专门用于多线程的开发。 1.1 并发与并行 并发 多线程操作同一个资源。 CPU 只有一核,模拟出来多条线程,天下武功,唯快不破。那么我们就可以使用CPU快速交替,来模拟多线程。 并发编程的本质:充分利用CPU的资源! 并行 ......
姿势 JUC

JUC-2

JUC-2 6、集合类不安全 list package demo02; import java.util.*; import java.util.concurrent.CopyOnWriteArrayList; //.ConcurrentModificationException 并发修改异常 pu ......
JUC

JUC-1

JUC-1 1、什么是JUC 源码+官方文档面试高频问! java.util工具包、包、分类 业务∶普通的线程代码Thread Runnable没有返回值、效率相比入Callable 相对较低! 2、线程和进程 线程、进程,如果不能使用一句话说出来的技术,不扎实! 进程:—个程序,QQ.exe Mu ......
JUC

全网最详细Java-JUC

Java-JUC ⓪基础 ❶进程&线程 进程:指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间。 线程:比进程更小的执行单位,一个进程可以启动多个线程,每条线程并行执行不同的任务。 ❷并行&并发 并行(Parallel):在同一时刻,有多个指令在多个 CPU 上同时执行。 并发(Con ......
全网 Java-JUC Java JUC

25届实习秋招-Java面试-JUC多线程面试题整理-牛客网

JUC 介绍一下JUC下的锁(如何使用及应用场景) 线程 什么是进程: 特征 什么是线程:资源 为什么多线程,什么使用用单线程,什么时候多线程,什么条件下多线程快。 进程和线程的对比: 进程如何通信,每种通信存放的介质。|| 线程的通信,几种方式。join 进程和线程的区别,在JVM层面的体现 一个 ......
线程 Java JUC

JUC并发编程

JUC并发编程 1.什么是JUC java.util 工具包,包,分类 业务: 普通的线程代码 Thread Runable 没有返回值,效率相比Callable相对较低! 2.线程和进程 线程、进程、如果不能使用一句话说出来的技术,不扎实! 进程:一个程序,例如 qq.exe,代表一个程序的集合 ......
JUC

JUC

一、JUC 1.概念 从Java 5开始,在JDK中多出了java.util.concurrent包(简称:JUC)。 JUC主要是让开发者在 多线程编程 中更加简单、方便一些。 通过JDK内置了一些类、接口、关键字,补充完善了JDK对于并发编程支持的“短板”。 2.主要包含功能 Executor: ......
JUC

JUC并发编程黑马笔记

# JUC ## 进程 ### 概述 进程:程序是静止的,进程实体的运行过程就是进程,是系统进行**资源分配的基本单位** 进程的特征:并发性、异步性、动态性、独立性、结构性 **线程**:线程是属于进程的,是一个基本的 CPU 执行单元,是程序执行流的最小单元。线程是进程中的一个实体,是系统**独 ......
黑马 笔记 JUC

【转载】JUC常见面试题:Java线程和操作系统线程有什么区别

### 【转载】JUC常见面试题:Java线程和操作系统线程有什么区别 整理来自于:https://cloud.tencent.com/developer/article/1818151 #### 1 操作系统的用户态和核心态 在操作系统中,内存通常会被分成`用户空间(User space)`与`内 ......
线程 试题 系统 Java JUC

java juc相关

JUC全称Java Util Concurrency,是java中用于并发编程的工具类库,提供了丰富的类和接口,用于管理多线程,支持同步互斥操作。 JUC特点: 高效性:JUC提供了高度优化的并发控制机制,可以提高多线程应用程序的执行效率和吞吐量。 可扩展性:JUC支持灵活的扩展和定制,提供了各种类 ......
java juc

JUC 中三个超好用的辅助类

## CountDownLatch ### 简介 CountDownLatch 是基于计数器的原理实现的, 它内部维护了一个整型的计数器。创建 CountDownLatch 对象时, 需要指定一个初始计数值, 该计数值表示需要等待的线程数量,使用其 await() 方法让其等待。每当一个线程完成了其 ......
三个 JUC

JUC

# 1、什么是JUC ![](https://img2023.cnblogs.com/blog/2585339/202307/2585339-20230731222345153-854540387.png) java.util 工具包、包、分类 **业务:普通的线程代码 Thread** **Run ......
JUC

JUC并发编程(4)—ThreadLocal介绍(超详细 集大成版本!!!)

[TOC]() ## ThreadLocal简介 >ThreadLocal本地线程变量,意思是ThreadLocal中填充的变量属于当前线程,该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。通过使用get()和set()方法,获取默认值或将其值更改为当前线程所存的副本的值从而避免了 ......
ThreadLocal 版本 JUC

JUC并发编程

## 一、JUC并发编程 ### 1.1. 什么是JUC #### 1.1.1. 进程和线程、管程 - 进程 -- 资源分配的最小单位 > 指在系统中正在运行的一个应用程序;程序一旦运行就是进程;每一个进程都有它自己的内存空间和系统资源。 - 线程 -- 程序执行的最小单位 > 轻量级进程,系统分配 ......
JUC

JUC并发编程(3)—锁中断机制

[TOC](JUC Day3之锁中断机制) ==学习视频:https://www.bilibili.com/video/BV1ar4y1x727== ## 1.什么是中断 1. 一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止,所以,Thread.stop、Thread.susp ......
机制 JUC

JUC并发编程(2)—synchronized锁原理

[TOC]() synchronized关键字以及锁的原理学习笔记: 学习b站周扬老师视频:[https://www.bilibili.com/video/BV1ar4y1x727](https://www.bilibili.com/video/BV1ar4y1x727) ==讲得真的很不错!== ......
synchronized 原理 JUC

JUC并发编程(1)—CompletableFuture详解

@[TOC](JUC并发编程(1)—CompletableFuture详解) 最近在学习juc并发编程,于是决定汇总一下并发编程中常用方法,常见问题以及常见考题,今天是第一章—CompletableFuture ## CompletableFuture介绍 CompletableFuture是jdk ......
CompletableFuture JUC

JUC笔记

JUC并发编程 狂神说:https://space.bilibili.com/95256449 1. 什么是JUC JUC就是java.util.concurrent下面的类包,专门用于多线程的开发。 源码 + 官方文档 面试高频问! java.util 工具包 业务:无法通过普通的线程代码 Thr ......
笔记 JUC

JUC 常用类 ReentrantLock

- ReentrantLock 类内部总共存在 Sync、NonfairSync、FairSync 三个类 - NonfairSync与FairSync类继承自 Sync 类 - Sync类继承自 AbstractQueuedSynchronizer 抽象类 ### 内部类 #### Sync `` ......
ReentrantLock 常用 JUC

JUC包常用类原理

## 概要 放眼望去,`java.util.concurrent`包下类大致包括:atomic 原子类、锁、并发集合、线程池、工具类。我们挑重要的了解一下。 ![](https://img2023.cnblogs.com/blog/2728681/202307/2728681-20230711181 ......
原理 常用 JUC

JUC

ReentrantReadWriteLock 读写锁 概念 一个资源可以被多个读线程访问,或者可以被一个写线程访问,但是不能同时存在读写线程,读写互斥,读读共享提升性能,同时多人进行读操作 缺点:造成锁饥饿,一直读,没有写操作 读是共享锁,写独占锁 锁降级:写锁降级到读锁,读锁不能升级到写锁 阻塞队 ......
JUC