E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
Java并发JUC
金三银四-解锁
Java并发
编程的艺术:掌握多线程、同步和并发控制的精髓
又要快到一年一度的金三银四,开始复习啦~!每天一点点。。目录一、Java中的volatile关键字有什么作用?二、解释Java中的synchronized关键字及其工作原理。三、Java中的CAS操作是什么?它如何实现无锁编程?四、讲述Java中的Lock接口及其与synchronized的区别五、什么是线程池?在Java中如何使用线程池?六、Java内存模型中的happens-before原则是
小贤java
·
2024-01-17 04:43
Java面试
Java
SE
java
开发语言
Java面试
金三银四
Java并发编程
学习笔记
浅析项目实践接触到的
java并发
线程池应用场景
文章目录前言场景一、营销场景-门店活动信息定时校验场景二、算法工程依赖-批量查询数据集总结前言最近研读《
java并发
编程之美》这本书8、9、11章关于线程池的部分,有很多新的收获,在此想结合项目经历,总结分析一下实践中对于线程池的应用场景
无一郎的技术圈
·
2024-01-17 02:36
java
后端
《
java并发
编程之美》学习笔记-知识盲点记录
文章目录@[TOC](文章目录)前言一、InheritableThreadLocal类(第一章1.11节)二、原子操作Adder与Accumulator(第四章)1.LongAdder2.LongAccumulator三、StampedLock锁(第六章)四、守护线程、伪共享、虚假唤醒(第一、二章)1.守护线程2.伪共享3.虚假唤醒4.Unsafe类与LockSupport五、Concurrent
无一郎的技术圈
·
2024-01-17 02:06
java
后端
并发编程之三——
JUC
工具类
1.Fork-Join1.1分而治之分治法的设计思想是:将一个难以直接解决的大问题,分割成一些规模较小的相同问题,以便各个击破,分而治之。分治策略是:对于一个规模为n的问题,若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同(子问题相互之间有联系就会变为动态规范算法),递归地解这些子问题,然后将各子问题的解合并得到原问题的
夕v雨
·
2024-01-17 00:00
java
java
多线程
Juc
并发编程14——线程计数器CountdownLatch源码剖析
前言作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端专栏简介:
juc
并发编程,讲解锁原理、锁机制、线程池、AQS、并发容器、并发工具等,深入源码,持续更新。
半旧518
·
2024-01-17 00:58
juc
java
juc
并发
多线程
原力计划
Java并发
编程核心包——
JUC
JUC
初步作者:李晶晶;日期:2021年4月20日;学习视频:2020权威_
juc
与jvm并发编程Java必学_阳哥-尚硅谷文章目录
JUC
初步初识Lock抢票案例生产者消费者问题使用Lock解决生产者消费者问题
木子六日
·
2024-01-17 00:57
java
juc
可重入锁
lock
线程池
ThreadPool
并发编程(七)——
JUC
并发工具
一、CountDownLatch应用&源码分析1.1CountDownLatch介绍CountDownLatch就是
JUC
包下的一个工具,整个工具最核心的功能就是计数器。
小灰灰-58
·
2024-01-17 00:26
并发编程
java
开发语言
这可能是最全面的
Java并发
编程八股文了
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
大彬聊编程
·
2024-01-16 23:14
分享
java
开发语言
面试
一天吃透
Java并发
面试八股文
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
大彬聊编程
·
2024-01-16 23:13
面试
Java
java
面试
开发语言
Java并发
编程的艺术-Java内存模型
基础共享变量(堆空间中所有的实例域,静态域,数组元素)的访问需要同步,而局部变量不会在线程间共享,所以不存在可见性问题。每一个线程都有一个私有的本地内存(抽象概念)源代码到最终的指令序列执行需经过编译器重排序和处理器重排序JMM要求java编译器在生成指令序列时,插入特定的内存屏障以禁止特定类型的处理器重排序。重排序重排序时遵守数据依赖性(写后读,读后写,写后写)as-if-serial语义:不管
油多坏不了菜
·
2024-01-16 21:56
Java并发
之魂——synchronized深度解析
虽然网上关于
Java并发
、多线程的文章已是不胜枚举,但是读起来总感觉晦涩且千篇一律,不是你转载我,就是我复制你。
AlbenXie
·
2024-01-16 19:51
高并发和负载均衡及各种优化
Java内置锁:深度解析lock和trylock
定义在Java11中,Lock接口是
Java并发
编程中一个重要的接口,它提供了更灵活的线程同步机制,相比于内置的synchronized关键
程序员古德
·
2024-01-16 19:50
java
python
开发语言
JavaEE进阶知识学习----多线程
JUC
高级知识-2-内存可见性-CAS算法
1.Java
JUC
简介在java5.0之后提供了一个java.util.concurrent包(简称
JUC
),此包中增加了很多在并发编程中常用的工具类,用于定义类似于线程的自定义系统,包括线程池,异步IO
Waldeinsamkeit4
·
2024-01-16 13:14
一天吃透
Java并发
面试八股文
内容摘自我的学习网站:topjavaer.cn分享50道
Java并发
高频面试题。线程池线程池:一个管理线程的池子。为什么平时都是使用线程池创建线程,直接new一个线程不好吗?
xiaoyuziliao
·
2024-01-16 11:49
java
分享
java
面试
开发语言
JVM实战(17)——模拟对象晋升
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介上一章,我们已经进行了一次YoungGC日志的分析,本章我们继续
smart哥
·
2024-01-16 08:07
jvm专题
jvm
Semaphore学习一
一、定义是
JUC
包下的一个工具类,我们可以通过其限制执行的线程数量,达到限流的效果。
CopyLower
·
2024-01-16 05:03
Java
学习
学习
开发语言
Java进阶 —— 多线程并发
前言在系统学完Java的面向对象编程之后,我们需要认真地来学习
Java并发
编程,我们在学习计算机操作系统的时候也都了解过进程、线程和协程的概念。
荔枝当大佬
·
2024-01-16 03:30
Java开发
java
多线程
并发
线程池
java并发
编程——多线程
本章主要介绍java中多线程并发编程基础知识,包括的内容有:进程,线程,协程的区别多线程的实现方式线程中断和优先级线程状态的切换一、进程、线程和协程1.1进程、线程和协程进程是资源分配的最小单位,操作系统会以进程为单位,分配系统资源(CPU时间片、内存等资源)。进程拥有自己独立的堆和栈,既不共享堆,也不共享栈。线程是CPU调度的最小单位,线程有自己的堆栈和局部变量,但线程之间没有单独的地址空间,共
西木风落
·
2024-01-16 03:57
Java基础知识巩固
java
多线程
高并发
JAVA并发
编程——多线程
目录线程的特点轻型实体独立调度和分配的基本单位可并发执行共享进程资源线程的实现使用内核线程实现使用用户线程实现使用用户线程加轻量级线程混合实现Java线程实现每日寄语线程的特点在多线程操作系统中,通常是在一个进程中包括多个线程,每个线程都是作为利用CPU的基本单位,是花费最小开销的实体。线程具有以下属性。轻型实体线程中的实体基本上不拥有系统资源,只是有一点必不可少的、能保证独立运行的资源。线程的实
别活在过去i
·
2024-01-16 03:27
JAVA并发编程的艺术
java
jvm
开发语言
JAVA并发
编程-从ReentrantLock看AQS实现源码解读
ReentrantLock的构造方法//默认非公平锁publicReentrantLock(){sync=newNonfairSync();}//指定publicReentrantLock(booleanfair){sync=fair?newFairSync():newNonfairSync();}ReentrantLock的加锁流程执行ReentrantLock的lock方法publicvoid
coder_sheep
·
2024-01-15 17:13
并发编程
java
数据结构
链表
jvm
JAVA并发
编程-AQS底层实现原理及应用(二)
JAVA并发
编程-AQS底层实现原理及应用(一)CANCELLED状态节点生成acquireQueued方法中的Finally代码:finalbooleanacquireQueued(finalNodenode
coder_sheep
·
2024-01-15 17:13
并发编程
java
算法
开发语言
数据结构
JAVA并发
编程-AQS底层实现原理及应用(一)
前言Java中的大部分同步类(CountDownLatch,Semaphore,CyclicBarrier、ReentrantLock等)都是基于AbstractQueuedSynchronizer(简称为AQS)实现的。AQS是一种提供了原子式管理同步状态、阻塞和唤醒线程功能以及队列模型的简单框架。本篇不讲述包含共享锁和ConditionQueue的部分。一、开发一个自定义Lock锁public
coder_sheep
·
2024-01-15 16:43
并发编程
java
开发语言
spring
boot
后端
ide
JAVA 多线程与高并发学习笔记(十三)——
JUC
显式锁
显式锁Lock接口Lock接口位于java.util.concurrent.locks包中,是
JUC
显式锁的一个抽象,主要抽象方法如下表。方法说明voidlo
简单一点点
·
2024-01-15 16:57
JVM实战(13)——JVM优化概述
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介本章,我们先来对系统运行过程中可能会遇到的各种JVM性能问题作个
smart哥
·
2024-01-15 11:08
jvm专题
jvm
JVM实战(14)——Young GC调优
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介本章,我们还是以案例驱动的方式讲解YoungGC调优,之前在基础
smart哥
·
2024-01-15 11:08
jvm专题
jvm
JUC
之锁
乐观锁和悲观锁悲观锁当一个线程在操作资源的时候,会悲观的任务有其他的线程会来抢占该资源,因此会在操作资源前进行加锁,避免其他线程抢占。Synchronized关键字和Lock实现类就是悲观锁。显示的锁定资源后再对资源进行操作。使用场景:适合写操作多的场景。先加锁能够保证写操作时数据正确本质:加锁去操作同步资源。乐观锁当一个线程去操作资源的时候,会乐观的任务其他线程不会来抢占资源,因此不会加锁。ja
--believe
·
2024-01-15 10:33
JUC
开发语言
juc
阿里P8纯手码
Java并发
编程核心原理笔记
并发编程并发编程这四个字想必大家最近都在网上看到过有很多的帖子在讨论。我们都知道并发编程可选择的方式有多进程、多线程和多协程。在Java中,并发就是多线程模式。而多线程编程也一直是一个被广泛而深入讨论的领域。如果遇到复杂的多线程编程场景,大多数情况下我们就需要站在巨人的肩膀上利用并发编程框架——JDKConcurrent包来解决相关线程问题。Concurrent包很复杂吗?相信很多人对于Concu
架构师谢俞
·
2024-01-15 00:41
【JAVA】谈谈 ReadWriteLock 和 StampedLock
Java并发
包中提供了ReadWriteLock和StampedLock两种灵
还在路上的秃头
·
2024-01-15 00:05
JAVA
java
开发语言
面试
笔记
【
JUC
进阶】14. TransmittableThreadLocal
目录1、前言2、TransmittableThreadLocal2.1、使用场景2.2、基本使用3、实现原理4、小结1、前言书接上回《【
JUC
进阶】13.InheritableThreadLocal》,
有一只柴犬
·
2024-01-14 19:57
JUC进阶
java
后端
netty(T-io)详解(包含4种io模型详解)
Netty(T-io),Redis、zookeeper、高性能http组件(Nginx)、
java并发
编程组件(
JUC
包)工作两年以后,必须熟练掌握。2、netty框架N
Dark_Code
·
2024-01-14 19:24
netty
T-io
java
java
开发语言
Java并发
- 线程安全类探索
1.简单设置线程安全类设计车辆追踪器,获取车辆位置和更新车辆位置信息(坐标x,y)展示显示化大屏版本一非线程安全车辆对象【不可变】(MutablePoint)线程安全车辆容器//非线程安全publicclassMutablePoint{publicintx,y;publicMutablePoint(){this.x=0;this.y=0;}publicMutablePoint(MutablePoi
--土拨鼠--
·
2024-01-14 13:08
Java
java
python
开发语言
Java并发
- 原子类
CAS原子操作CAS(CompareandSwap)是一种并发算法,通常用于实现多线程环境下的同步操作,特别是在并发编程中实现无锁算法。CAS操作涉及三个参数:内存位置(V)、期望值(A)和新值(B)。操作的意义是:仅当V的值等于A时,才将V的值更新为B。整个操作是原子的,不会被其他线程中断。下面是CAS的基本原理:读取内存值(V):线程首先读取共享变量的当前值(V)。比较并交换(Comparea
--土拨鼠--
·
2024-01-14 13:08
Java
java
jvm
开发语言
Java并发
- synchronized关键字
synchronized关键字在Java中的主要作用是确保多线程环境下对共享资源的安全访问,避免出现竞态条件和数据不一致的问题。它的主要意义包括以下几个方面:保证原子性:synchronized关键字能够确保被它修饰的方法或代码块在同一时刻只能被一个线程执行。解决竞态条件:使用synchronized关键字可以防止竞态条件的发生,确保对共享资源的操作按照预期的顺序执行。实现线程间通信:synchr
--土拨鼠--
·
2024-01-14 13:07
Java
java
开发语言
Java并发
- volatile关键字
volatile是Java中的关键字,主要用于确保多线程环境下共享变量的可见性、禁止指令重排序以及一些轻量级的同步操作。1.volatile的作用详解可见性:当一个线程对volatile变量进行写操作时,这个变量的新值会立即被刷新到主内存,而不是在线程本地缓存中等待一段时间。当其他线程需要读取这个变量时,它会从主内存中重新加载,而不是使用线程本地缓存中的值。禁止指令重排序:volatile关键字禁
--土拨鼠--
·
2024-01-14 13:07
Java
java
jvm
开发语言
Java并发
- 线程基础
1.程序&线程定义:程序(Process):一个程序是一个独立的执行单元,它包含了代码、数据、和系统资源的集合。每个程序都运行在自己独立的内存空间中,互相之间不直接共享内存。线程(Thread):线程是程序的执行流程,是操作系统调度的最小单元。一个程序可以包含多个线程,它们共享程序的内存空间和资源。资源分配:程序(Process):每个程序有独立的内存空间和系统资源,包括文件句柄、网络连接等。程序
--土拨鼠--
·
2024-01-14 13:37
Java
java
开发语言
Java并发
- LockSupport详解
LockSupport是
Java并发
包(java.util.concurrent)中的一个工具类,用于实现线程的阻塞和唤醒操作。
--土拨鼠--
·
2024-01-14 13:57
Java
java
开发语言
【Java】多线程与
JUC
JUC
是什么?
加文格罗夫斯
·
2024-01-14 13:50
Java
java
开发语言
java-ArrayBlockingQueue详解
在
Java并发
编程中,ArrayBlockingQueue是一个非常常用的工具类。它是一个由数组支持的有界阻塞队列,提供了线程安全的队列操作。
一杯可乐、
·
2024-01-14 10:17
多线程
java
常用Java代码-Java中的并发集合(ConcurrentHashMap、CopyOnWriteArrayList等)
1.ConcurrentHashMapConcurrentHashMap是
Java并发
包java.util.concurrent中的一个类,它提供了线程安全的Map实现。与Hashtabl
crmeb服务商-肥仔全栈开发
·
2024-01-14 08:08
java
windows
JVM基础(11)——G1垃圾回收器
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介经过前面章节的讲解,大家应该对ParNew+CMS这个GC组合的
smart哥
·
2024-01-14 06:43
jvm专题
jvm
JVM基础(12)——G1调优
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介本章和下一章,我们将通过一个实际案例来讲解如何针对G1进行JVM
smart哥
·
2024-01-14 06:43
jvm专题
jvm
JVM基础(10)——老年代调优
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介上一章中,我们通过一个实际案例讲解了如何进行新生代的JVM参数调
smart哥
·
2024-01-14 06:41
jvm专题
jvm
Java学习笔记(十一)——
JUC
并发编程(超详细)
线程和进程进程:一个程序的集合,一个进程至少包含一个线程;Java默认有两个进程,main、GC线程:一个进程某个功能由线程负责对于Java而言Thread、Runnable、Callable真的可以开启线程吗?开不了,通过本地方法native()调用并发和并行并发编程:并发、并行,本质是充分利用CPU的资源并发:多线程操作同一个资源并行:多个线程同时执行;线程池线程有几个状态?publicenu
星辰引路-Lefan
·
2024-01-14 06:07
Java
java
JUC
之CompletableFuture
Future接口理论Future接口定义了异步任务执行的一些方法,包括异步任务执行结果,异步任务执行是否中断,异步任务是否完毕等。Future接口常用实现类FutureTask异步任务FutureTaskfutureTask=newFutureTask(()->{System.out.println(Thread.currentThread().getName()+"\t-----comein")
--believe
·
2024-01-14 05:16
JUC
java
数据库
linux
easyexcel 3.0.x 版本实现指定列 锁定以及指定列隐藏
1:效果示例2:代码示例:UnLockCell.javapackagecom.example.
juc
.zhujie;/***@Author*@DateCreatedin2023/12/1910:09*@
夏林夕
·
2024-01-14 00:29
SpringBoot
java
开发语言
多线程设计模式-Guarded Suspension模式
GuardedSuspension设计模式是很多设计模式的基础,比如生产者消费者模式,同样在
Java并发
包中的BlockingQueue中也大量使用到了GuardedSuspension设计模式。
zjyfree
·
2024-01-13 16:13
设计模式
java
前端
Java---
JUC
并发篇(多线程详细版)
Java---多线程1.并发基础(线程篇)1.1java线程状态及线程状态之间的转化1.2操作系统层面有5种状态2.线程池的核心参数(7个核心参数)2.1线程池参数介绍2.2代码实现2.3handler4种拒绝策略3.sleep与wait方法对比3.1异同点3.2代码展示4.lock锁与synchronized锁区别4.1异同点4.2代码实现5.volatile能否保证线程安全5.1什么是线程安全
Panda_Java
·
2024-01-13 15:16
Java并发编程
Java面经
多线程
Java多线程并发之同步容器和并发容器-第一篇
本文是《凯哥分享
Java并发
编程之J.U.C包讲解》系列教程中的第五篇。如果想系统学习,凯哥(kaigejava)建议从第一篇开始看。从本篇开始,我们就来讲解讲解Java的并发容器。大致思路:先介
tomfyyds
·
2024-01-13 14:46
程序员
java
java程序
java
经验分享
apache
开发语言
c语言
JAVA并发
-Semaphore
案例/***@authorqhong*@date2019/12/1310:59*https://www.cnblogs.com/dolphin0520/p/3920397.html*信号量*一个工厂有5台机器,但是有8个工人,一台机器同时只能被一个工人使用,只有使用完了,其他工人才能继续使用**/publicclassSemaphoreDemo{publicstaticvoidmain(Strin
hongdada
·
2024-01-13 06:08
Java并发
Condition 详解
1.引言在
Java并发
编程中,线程间的协作是一个核心话题。为了实现线程间的协作,Java提供了多种机制,其中等待/通知机制是最常见的一种。
一杯可乐、
·
2024-01-13 04:05
多线程
java
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他