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)
JVM实战(20)——jstat实战(1)
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介本章和下一章,我们将通过之前讲过的两个案例,看看如何在生产环境下
smart哥
·
2024-01-19 13:43
jvm专题
jvm
Java并发编程
: 并发编程中的ExecutionException异常
一、什么是ExecutionException在并发编程中在执行java.util.concurrent.Future实现类的get方法时,需要捕获java.util.concurrent.ExecutionException这个异常。Future.get()方法通常是要获取任务的执行结果,当执行任务的过程中抛出了异常,就会产生ExecutionException异常。二、如何处理Executio
玉成226
·
2024-01-19 12:02
【Java并发编程】
java
网络
Java并发编程
: ExecutorCompletionService详解
一、什么场景下使用ExecutorCompletionService当在项目中我们向使用线程池处理任务时,在任务处理完成后想要的到返回值进而进行其他的逻辑处理,这个时候就可以使用ExecutorCompletionService类,任务执行完成后即可根据返回值进行其他的逻辑处理。使用提供的Executor执行任务的CompletionService。该类安排提交的任务在完成后放置在使用take可访
玉成226
·
2024-01-19 12:59
【Java并发编程】
java
JVM实战(28)——模拟Metaspace内存溢出
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介本章,我们将通过示例代码演示Metaspace区域是如何发生内存
smart哥
·
2024-01-19 08:22
jvm专题
jvm
JVM实战(19)——JVM调优工具概述
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介前面章节,我们已经介绍了如何通过GC日志去分析系统的运行情况。本
smart哥
·
2024-01-19 08:51
jvm专题
jvm
JVM实战(25)——元数据区优化
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、案例背景本章介绍的案例比较特殊,是由于人为设置JVM参数错误,而导致
smart哥
·
2024-01-19 08:51
jvm专题
jvm
JVM实战(27)——内存溢出概述
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介从本章开始,我们将介绍JVM中的内存溢出异常——OutofMem
smart哥
·
2024-01-19 08:21
jvm专题
jvm
JVM实战(26)——SystemGC
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、案例背景本章将介绍一个因为程序员同学不懂JVM的GC机制而导致的系统
smart哥
·
2024-01-19 08:44
jvm专题
jvm
JavaEE初阶 CAS,
JUC
的一些简单理解,包含concurrent, ReentrantLock,Semaphore以及ConcurrentHashMap
中我们简单介绍了一点关于CAS的内容,实际上CAS就是CompareandSwap的首拼,也是用来解决线程安全问题的,这一节我们将完整的介绍并且讲解CAS中的ABA问题以及一些解决方案.后续也讲解一些
JUC
qiuqiushuibx
·
2024-01-18 23:11
JavaEE
java
开发语言
【
JUC
】线程池原理
文章目录线程池基本概述阻塞队列原理基本介绍核心方法LinkedBlockingQueue链表队列入队出队加锁分析性能比较SynchronousQueue同步队列成员属性非公实现公平实现线程池原理状态信息成员属性成员方法提交方法添加线程运行方法停止方法创建线程池创建方式Executors创建要求提交任务方法关闭任务方法处理异常线程池基本概述线程池:一个容纳多个线程的容器,容器中的线程可以重复使用,省
小小Yi学编程
·
2024-01-18 18:03
JUC
java
开发语言
【
JUC
】ConcurrentHashMap源码介绍
文章目录ConcurrentHashMap并发集合集合对比并发死链成员属性变量内部类代码块构造方法成员方法数据访存添加方法put扩容方法transfer获取方法get删除方法removeJDK7原理相关面试题HashMap与ConcurrentHashMap有什么区别?介绍一下ConcurrentHashMap是怎么实现的?ConcurrentHashMap并发集合集合对比四种集合:HashMap
小小Yi学编程
·
2024-01-18 18:03
java
开发语言
【
JUC
】ReentrantReadWriteLock源码解析
文章目录ReentrantReadWriteLock读写锁缓存更新策略实现原理成员属性加锁原理写锁原理读锁原理解锁原理StampedLockReentrantReadWriteLock读写锁独占锁:指该锁一次只能被一个线程所持有,对ReentrantLock和Synchronized而言都是独占锁共享锁:指该锁可以被多个线程锁持有ReentrantReadWriteLock其读锁是共享锁,写锁是独
小小Yi学编程
·
2024-01-18 18:33
JUC
java
开发语言
Java并发编程
之Condition
1.前言任意一个Java对象,都有一组监视器方法(定义在java.lang.Object上),主要包括wait()、wait(longtimeout)、notify()以及notifyAll()方法,这些方法与synchronized同步关键字配合,可以实现等待/通知模式。Condition接口也提供了类似Object的监视器方法,与Lock配合可以实现等待/通知模式,但是这两者在使用方式以及功能
干天慈雨
·
2024-01-18 15:29
JUC
之可重入锁
前言本文主要是【
JUC
】——
JUC
之可重入锁的文章,如果有什么需要改进的地方还请大佬指出⛺️作者简介:大家好,我是听风与他☁️博客首页:CSDN主页听风与他每日一句:狠狠沉淀,顶峰相见目录前言可重入锁文章末尾可重入锁
听风与他
·
2024-01-18 12:56
java
JUC
锁
可重入锁
JUC
-公平锁和非公平锁
前言本文主要是【
JUC
】——
JUC
-公平锁和非公平锁的文章,如果有什么需要改进的地方还请大佬指出⛺️作者简介:大家好,我是听风与他☁️博客首页:CSDN主页听风与他每日一句:狠狠沉淀,顶峰相见目录前言1
听风与他
·
2024-01-18 12:56
java
锁机制
JUC
JVM实战(15)——Full GC调优
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介本章将会讲解一个频繁FullGC的案例,示例来自于JVM基础篇中
smart哥
·
2024-01-18 11:17
jvm专题
jvm
JUC
(java.util.concurrent)的常见类(多线程编程常用类)
Callable接口这个东西可以类比于之前见过的Runnable接口.两者的区别在于Runnable关注执行过程,不关注执行结果.Callable关注执行结果,它之中的call方法(类比于run方法)返回值就是线程执行任务的结果.Callable里面的V期望线程的入口方法里,返回值是啥类型,此处的泛型参数就是啥类型.Callable优势示例:创建线程计算1+2+...+1000,使用Runnabl
灰灰快醒醒
·
2024-01-18 09:57
java
开发语言
理解并使用ThreadLocal实现线程级别的数据隔离
目录前言正文ThreadLocal的基本用法实现原理使用场景泛型工具类示例注意事项总结前言在
Java并发编程
中,ThreadLocal是一个非常实用且重要的工具类,它提供了一种线程本地存储机制。
李少兄
·
2024-01-18 07:18
Java
java
jvm
开发语言
JVM实战(24)——大对象优化
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、案例背景本章将介绍一个因为大对象而导致的频繁GC问题,其本质也是开发
smart哥
·
2024-01-18 01:02
jvm专题
jvm
JVM实战(22)——jamp和MAT实战
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介我们通过jstat进行分析,发现FullGC非常频繁,基本上每隔
smart哥
·
2024-01-18 01:32
jvm专题
jvm
JVM实战(23)——内存碎片优化
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、案例背景本案例的背景是一个高峰期每秒十万QPS的社交APP,这类AP
smart哥
·
2024-01-18 01:32
jvm专题
jvm
JVM实战(21)——jstat实战(2)
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析一、简介上一章,我们通过jstat命令分析了BI系统中新生代对象的GC情
smart哥
·
2024-01-18 01:59
jvm专题
jvm
项目压测优化实践思路
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring原理、
JUC
原理、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2024-01-17 19:52
解决方案与实现思路
压测优化
性能优化
设计一个简易版本的分布式任务调度系统
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2024-01-17 19:22
解决方案与实现思路
分布式
zookeeper
分布式任务调度
设计一个简单的规则引擎
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring原理、
JUC
原理、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2024-01-17 19:22
解决方案与实现思路
java
规则引擎
二叉树
mysql
设计一个抽奖系统
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring原理、
JUC
原理、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2024-01-17 19:20
解决方案与实现思路
项目设计
项目优化
JUC
-线程中断机制和LockSupport
线程中断机制概念java提供了一种用于停止线程的协商机制-中断。称为中断标识协商机制。常用APIpublicvoidinterrupt()仅仅让线程的中断标志位设置为true。不进行其他操作。publicbooleanisInterrupted()获取中断标志位的状态。publicstaticbooleaninterrupted()获取中断标志位的状态。并将中断标志位设置为false如何停止中断运
--believe
·
2024-01-17 16:25
JUC
JUC
JUC
的常见类
目录CallableReentrantLockSemaphoreCountDownLatch
JUC
即java.util.concurrent,其中存放了一些进行多线程编程时有用的类CallableCallable
楠枬
·
2024-01-17 12:22
JavaEE
java
开发语言
多线程
java-ee
JUC
基础学习笔记
参考文献:01.尚硅谷_
JUC
-课程介绍_哔哩哔哩_bilibili1.
JUC
概述1.1
JUC
简介
juc
就是java.util.concurrent工具类包的简称,这是一个处理线程的工具包,JDK1.5
yz涣
·
2024-01-17 10:31
java
java
开发语言
Java并发编程
(一)—— 内存模型(JMM)
文章目录1、什么是JMM?2、计算机内存架构3、缓存一致性问题4、指令重排序5、JMM内存模型5.1、JMM主内存和工作内存关系5.2、8个原子操作和8个执行规则5.2.1、8个原子操作5.2.2、8个执行规则5.3、JMM模型的线程间通信6、JMM解决的问题6.1、可见性6.1.1、定义6.1.2、可见性问题6.1.3、如何解决可见性问题6.2、原子性6.2.1、定义6.2.2、原子性问题6.2
有你的星空
·
2024-01-17 04:48
JMM
java线程
java
ThreadLocal
本篇博客实在自己看了
JUC
视频及嗷丙的博客后编写。具体的一些地方可能写的不太清晰。
还叫康师傅
·
2024-01-17 04:44
java-多线程
金三银四-解锁
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并发编程
的艺术-Java内存模型
基础共享变量(堆空间中所有的实例域,静态域,数组元素)的访问需要同步,而局部变量不会在线程间共享,所以不存在可见性问题。每一个线程都有一个私有的本地内存(抽象概念)源代码到最终的指令序列执行需经过编译器重排序和处理器重排序JMM要求java编译器在生成指令序列时,插入特定的内存屏障以禁止特定类型的处理器重排序。重排序重排序时遵守数据依赖性(写后读,读后写,写后写)as-if-serial语义:不管
油多坏不了菜
·
2024-01-16 21:56
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
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
上一页
2
3
4
5
6
7
8
9
下一页
按字母分类:
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
其他