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
JUC源码系列
JUC
线程池的实战问题 - 线程池参数应该如何配置?
Oracle官方并没有给出线程池corePoolSize的具体参考值,因为这个值的大小应该根据实际业务场景和系统资源情况来进行优化调整。不同的业务场景和系统资源状况可能需要不同的corePoolSize设置。在《Java并发编程实战》一书中,作者BrianGoetz等人指出,线程池的规模应该根据任务类型和计算密集度来确定,对于CPU密集型任务,应该将核心线程数设置为处理器核心数加1或者2;对于I/
@Autowire
·
2023-08-13 14:08
JUC面试题汇总
java
JUC
线程池的实战问题引出的一系列原理问题
1我们为什么需要使用线程池线程过多会带来额外的开销,其中包括创建销毁线程的开销、调度线程的开销等等,同时也降低了计算机的整体性能。线程池维护多个线程,等待、监督、管理、分配可并发执行的任务。这种做法,一方面避免了处理任务时创建销毁线程开销的代价,另一方面避免了线程数量膨胀导致的过分调度问题,保证了对内核的充分利用。线程池是一种通过“池化”思想,帮助我们管理线程而获取并发性的工具,在Java中的体现
@Autowire
·
2023-08-13 14:07
JUC面试题汇总
python
java
开发语言
Java多线程(4)---死锁和Synchronized加锁流程
死锁的几个经典场景2.3死锁产生的条件2.4如何解决死锁个人主页:tq02的博客_CSDN博客-C语言,Java,Java数据结构领域博主本文由tq02原创,首发于CSDN本章讲解内容:多线程的策略锁、CAS和
JUC
tq02
·
2023-08-13 12:05
JavaEE
java
开发语言
死锁
java-ee
【
JUC
】复习指南
JUC
复习指南:
JUC
有哪些知识点?
一条柴_Alex
·
2023-08-13 07:14
#
多线程
java
JUC
并发编程之原子类
目录1.什么是原子操作1.1原子类的作用1.2原子类的常见操作原子类的使用注意事项并发编程是现代计算机应用中不可或缺的一部分,而在并发编程中,处理共享资源的并发访问是一个重要的问题。为了避免多线程访问共享资源时出现竞态条件(RaceCondition)等问题,Java提供了一组原子类(AtomicClasses)来支持线程安全的操作。1.什么是原子操作在并发编程中,原子操作是不可被中断的一个或一系
山河亦问安
·
2023-08-12 20:18
并发编程和高并发实战
java
数据库
开发语言
JUC
并发编程之CAS
目录1.什么是CAS1.1CAS的定义1.2CAS的应用场景2.CAS的原理2.1比较和交换操作2.2CAS的实现原理2.3CAS的ABA问题及解决方案3.Java中的CAS3.1java.util.concurrent.atomic包3.2AtomicInteger与AtomicLong3.3ABA问题的解决:AtomicStampedReference和AtomicMarkableRefere
山河亦问安
·
2023-08-12 20:17
并发编程和高并发实战
java
开发语言
Spring源码解析(七):bean后置处理器AutowiredAnnotationBeanPostProcessor
Spring
源码系列
文章Spring源码解析(一):环境搭建Spring源码解析(二):bean容器的创建、默认后置处理器、扫描包路径beanSpring源码解析(三):bean容器的刷新Spring源码解析
冬天vs不冷
·
2023-08-12 18:56
spring
spring
java
后端
Spring源码解析(八):bean后置处理器CommonAnnotationBeanPostProcessor
Spring
源码系列
文章Spring源码解析(一):环境搭建Spring源码解析(二):bean容器的创建、默认后置处理器、扫描包路径beanSpring源码解析(三):bean容器的刷新Spring源码解析
冬天vs不冷
·
2023-08-12 18:26
spring
spring
java
后端
JUC
工具类:CompletableFuture介绍
前言一些业务场景我们需要使用多线程异步执行任务,加快任务执行速度。JDK5新增了Future接口,用于描述一个异步计算的结果。虽然Future以及相关使用方法提供了异步执行任务的能力,但是对于结果的获取却是很不方便,我们必须使用Future.get()的方式阻塞调用线程,或者使用轮询方式判断Future.isDone任务是否结束,再获取结果。与此同时,Future无法解决多个异步任务需要相互依赖的
静看º一季花开花落
·
2023-08-12 14:54
多线程与线程并发
java
Java多线程(3)---锁策略、CAS和
JUC
公平锁和非公平锁1.6可重入锁和不可重入锁二.CAS2.1为什么需要CAS2.2CAS是什么⭐CAS的介绍⭐CAS工作原理2.3CAS存在的问题2.4CAS的应用⭐实现原子类⭐实现自旋锁2.5CAS的缺点三.
JUC
3.1ReentrantLo
tq02
·
2023-08-12 12:06
JavaEE
开发语言
多线程
java-ee
Synchronized与Lock区别
核心)(1)synchronized和Lock都是可重入锁,前者是jvm中使用monitorenter(1个)和monitorexit(2个)来实现同步且其中阻塞和唤醒是wait和notify,后者是
juc
进击的猫
·
2023-08-11 21:05
总结类
JAVA锁
锁
synchronized
lock
集合框架核心知识点——线程安全
JUC
文章目录(一)Collections.synchronized实现原理1、Collections.synchronizedList实现原理2、Collections.synchronizedMap实现原理3、Collections.synchronizedSet实现原理(二)CopyOnWrite实现原理1、CopyOnWriteArrayList实现原理(读写分离、写时复制机制)、使用场景实现原
进击的猫
·
2023-08-11 20:35
集合框架
java
juc
线程安全
高并发
生产者消费者模型简单实现(java)
主要使用了
juc
中的Lock和Condition接口,代码如下:publicclassStorage{privatestaticfinalintSIZE=100;privateLinkedListlinkedList
静了静心123
·
2023-08-11 20:08
美团动态线程池实践思路,开源了
写在前面稍微有些Java编程经验的小伙伴都知道,Java的精髓在
juc
包,这是大名鼎鼎的DougLea老爷子的杰作,评价一个程序员Java水平怎么样,一定程度上看他对
juc
包下的一些技术掌握的怎么样,这也是面试中的基本上必问的一些技术点之一
DataFox
·
2023-08-11 11:58
JUC
并发编程之同步器(Semaphore、CountDownLatch、CyclicBarrier、Exchanger、CompletableFuture)附带相关面试题
在
JUC
中引入了Semaphore资源调度,通过设置固定的资源量,让线程进行争取
Alphamilk
·
2023-08-11 01:17
java
java
开发语言
java高并发系列 - 第16天:
JUC
中等待多线程完成的工具类CountDownLatch,必备技能
java高并发系列-第16天:
JUC
中等待多线程完成的工具类CountDownLatch,必备技能这是java高并发系列第16篇文章。
懒羊羊--搞点小技术
·
2023-08-10 15:28
线程
java
python
开发语言
java高并发系列 - 第15天:
JUC
中的Semaphore(信号量)
java高并发系列-第15天:
JUC
中的Semaphore(信号量)java高并发系列第15篇文章Semaphore(信号量)为多线程协作提供了更为强大的控制方法,前面的文章中我们学了synchronized
懒羊羊--搞点小技术
·
2023-08-10 15:24
线程
java
python
开发语言
金九银十面试题之《
JUC
》
辛苦牛,掌握主流技术栈,包括前端后端,已经7年时间,曾在税务机关从事开发工作,目前在国企任职。希望通过自己的不断分享,可以帮助各位想或者已经走在这条路上的朋友一定的帮助目录前言内容Q1:什么是CAS?Q2:CAS有什么问题?Q3:有哪些原子类?Q4:AtomicIntger实现原子更新的原理是什么?Q5:CountDownLatch是什么?Q6:CyclicBarrier是什么?Q7:Semaph
牛一头
·
2023-08-10 14:53
牛的面试
java
JUC
并发原理
文章目录
JUC
并发synchronized锁对象底层原理synchronized锁升级无锁偏向锁轻量级锁重量级锁JIT对锁的优化:锁消除和锁粗化reentrantlock公平锁和非公平锁可重入锁/递归锁死锁死锁产生条件如何排查死锁
连连斯基
·
2023-08-10 14:08
Java
java
哈希算法
jvm
JUC
并发编程(二)ForkJoinPool、Future、CompletableFuture、CAS
文章目录ForkJoin分治工作窃取ForkJoinPool与ThreadPoolExecutor使用案例不带返回值的计算--RecursiveAction带返回值的计算--RecursiveTaskFuture异步回调烧水案例join实现FutureTask实现CompletableFuture为什么叫CompletableFuture?创建异步任务supplyAsyncrunAsync获取任务
连连斯基
·
2023-08-10 14:38
Java
java
开发语言
JUC
并发编程(一)Synchronized、Lock、CountDownLatch、ReadWriteLock、BlockingQueue、TreadPoolExecutor
Synchronizedsynchronized解决Lock锁synchronized锁与Lock锁的区别生成者消费者问题synchronized实现lock版实现-conditioncondition实现精准通知唤醒Callable
JUC
连连斯基
·
2023-08-10 14:37
Java
python
算法
开发语言
多线程并发和并行的区别
背景 对于java开发从业人员来说,并发编程是绕不开的话题,
juc
并发包下提供了一系列多线程场景解决方案。
鲫鱼哥
·
2023-08-10 01:03
多线程
java
多线程
并发编程
并行计算
JUC
并发编程(
JUC
核心类、TimeUnit类、原子操作类、CASAQS)附带相关面试题
目录1.
JUC
并发编程的核心类2.TimeUnit(时间单元)3.原子操作类4.CAS、AQS机制1.
JUC
并发编程的核心类虽然java中的多线程有效的提升了程序的效率,但是也引发了一系列可能发生的问题
Alphamilk
·
2023-08-09 02:34
java
开发语言
java
JUC
之Java对象内存布局和对象头
面试题Objectobject=newObject()谈谈你对这句话的理解?一般而言JDK8按照默认情况下,new一个对象占多少内存空间;对象在堆内存中布局JVM第三版中:对象内部结构分为:对象头、实例数据、对齐填充(保证8个字节的倍数)。对象头分为对象标记(markOop)和类元信息(klassOop),类元信息存储的是指向该对象类元数据的首地址。在64位系统中,MarkWord占了8个字节,类
时越zz
·
2023-08-08 22:08
JUC
java
JUC
面试重点
对象头
mark
word
内存布局
JUC
之 AbstractQueuedSynchronizer之AQS
AQS抽象队列同步器是用来构建锁或者其它同步器组件的公共基础部分的抽象实现,是重量级基础框架及整个
JUC
体系的基石,主要解决锁分配给谁的问题通过内置的抽象FIFO队列来完成资源获取线程的排队工作,并通过一个
时越zz
·
2023-08-08 22:08
JUC
java
JUC
AQS
源码解析
Lock锁
JUC
之ThreadLocal
面试题ThreadLocal中ThreadLocalMap的数据结构和关系?ThreadLocal的key是弱引用,这是为什么?ThreadLocal内存泄露问题你知道吗?ThreadLocal中最后为什么要加remove方法?介绍ThreadLocal提供线程局部变量。这些变量与正常的变量不同,因为每一个线程在访问ThreadLocal实例的时候(通过其get或set方法)都有自己的、独立初始化
时越zz
·
2023-08-08 22:38
JUC
JUC
线程
Java
高并发
java
面试
ThreadLocal
JUC
之 ReentrantLock、ReentrantReadWriteLock、StampedLock
面试题你知道Java里面有哪些锁?你说你用过读写锁,锁饥饿问题是什么?有没有比读写锁更快的锁?StampedLock知道吗?(邮戳锁/票据锁)ReentrantReadWriteLock有锁降级机制策略你知道吗?ReentrantReadWriteLock(读写锁)一个资源能够被多个读线程访问,或者被一个写线程访问,但是不能同时存在读写线程。读写锁ReentrantReadWriteLock并不是
时越zz
·
2023-08-08 22:06
JUC
JUC
java
性能优化
锁
读写锁
邮戳锁
android 4.2 launcher 源码,重拾Android-【吃透
源码系列
】之Android系统启动(七)Launcher的启动...
Launcher进程启动流程Launcher启动过程介绍SystemServer进程在启动的过程中会启动PackageManagerService,PKMS启动后会将系统中的应用程序安装完成。Launcher启动时序图Android11.0源码走读ActivityManagerService/***Ready.Set.Go!*/publicvoidsystemReady(finalRunnable
米线抄手麻辣烫
·
2023-08-08 12:39
android
4.2
launcher
源码
备战秋招008(20230713)
二、关于问题的答案1.集合2.
JUC
02、底层原理03、内存泄漏总结前言提示:这里为每天自己的学习内容心情总结;LearnByDoing,NoworNever,Writingisorganizedthinking
FKX1213
·
2023-08-08 01:06
秋招打卡
java
面试
开发语言
juc
(java.util.concurrent)线程安全集合
ArrayList是非线程安全的,而Vector是线程安全的,其实现依靠synchronized,效率低。虽然能实现线程安全,但是不符合高并发。因此有ConcurrentHashMap、CopyOnWriteArraySet写时复制技术CopyOnWriteArrayList这几个集合框架。这里需要理解一个技术:写时复制技术。为了保证线程安全,又要高并发,所以要并发读,独占写。举个例子,有一个集合
hgfsrui
·
2023-08-07 13:51
JUC
之 “volatile“
两大特性可见性有序性注意:volatile不能保证原子性volatile的作用(内存语义)当对volatile变量写时,JMM会把当前线程对应的本地内存中的共享变量值立即刷新到主内存中。当对volatile变量读时,JMM会把当前线程对应的本地内存中的共享变量置为无效,直接从主内存中读取;所以volatile写的内存语义是将其数据立即从工作内存中刷新到主内存中,读的内存语义是直接从主内存中读取;内
时越zz
·
2023-08-07 13:41
JUC
JUC
java
volatile
内存屏障
高并发
指令重排序
面试
JUC
之线程中断与LockSupport
什么是中断首先一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。其次在Java中没有办法立即停止一条线程,然而停止线程却显得尤为重要,如取消一个耗时操作。因此,Java提供了一种用于停止线程的机制——中断。中断只是一种协作机制,Java没有给中断增加任何语法,中断的过程完全需要程序员自己实现。若要中断一个线程,你需要手动调用该线程的interrupt方法,该方法也仅仅是将线程对
时越zz
·
2023-08-07 13:41
JUC
java
JUC
线程
线程中断
LockSupport
许可
JUC
之JMM(Java内存模型)
经典面试题什么是Java内存模型JMM?Java内存模型是Java虚拟机(JVM)规范中定义的一种抽象的内存模型,它定义了程序中对变量的访问和操作行为,且每个JVM都必须遵守这套规范,保证程序在各个平台的优化编译中的正确运行(尤其多线程),避免潜在的并发风险。它屏蔽了操作系统对内存的访问和硬件的差异。JMM与volatile它们两个之间的关系?(volatile文章中详解)JMM有那些特性或者说它
时越zz
·
2023-08-07 13:11
JUC
java
JUC
JMM
内存模型
面试重点
JUC
之CAS
是什么CAS–compareandswap的缩写,中文翻译成比较并交换,实现并发算法时常用到的一种技术。它包含三个操作数——内存位置、预期原值及更新值。执行CAS操作的时候,将内存位置的值与预期原值比较:如果相匹配,那么处理器会自动将该位置值更新为新值,如果不匹配,处理器不做任何操作,多个线程同时执行CAS操作只有一个会成功。CAS三个操作数V内存地址、A旧的预期值、B新值,当如果V中的值与A值相
时越zz
·
2023-08-07 13:40
JUC
java
JUC
并发
锁
自旋锁
轻量锁
ABA问题
Java基础之
JUC
概念篇
本篇文章主要记录
JUC
相关主要组件,并不做详细功能介绍,读完本篇内容你能大概知道
JUC
究竟是什么,有哪些内容、工具可以在平时编程为我们提供方便。
雪狼_lykos
·
2023-08-07 09:20
JUC
Atomic原子类深入
什么是AtomicAtomic是原子性的意思,可以自动更新,用于原子增量计数器之类的应用程序。可以解决多线程环境递增的异议性问题。怎么使用AtomicAtomicIntegerDemopublicclassAtomic{AtomicIntegerinteger=newAtomicInteger(0);@TestpublicvoidtestAtomicInteger()throwsInterrupt
小王_min
·
2023-08-06 06:37
《Java-SE-第二十九章》之Synchronized原理与
JUC
常用类
前言在你立足处深挖下去,就会有泉水涌出!别管蒙昧者们叫嚷:“下边永远是地狱!”博客主页:KC老衲爱尼姑的博客主页博主的github,平常所写代码皆在于此共勉:talkischeap,showmethecode作者是爪哇岛的新手,水平很有限,如果发现错误,一定要及时告知作者哦!感谢感谢!文章目录Synchronized原理偏向锁自旋锁重量级锁其他的优化操作锁消除锁粗化Callable接口Callab
潇潇雨声迟
·
2023-08-06 05:00
java
java
开发语言
深入 Java 线程池:从设计思想到源码解读
在jdk1.5的
JUC
包中有一个Executors,他能使我们创建的线程得到复用,不会频繁的创建和销毁线程。线程池首先创建一些线程,它们的集合称为线程池。
java涛仔
·
2023-08-05 17:31
Java基础-并发编程-并发编程知识点总结
Java工程师知识树/Java基础并发编程知识点总结:并发编程相关概念Java关键字实现线程同步synchronized关键字的使用与原理volatile关键字的使用与原理通过
JUC
包实现线程同步无锁形式实现
HughJin
·
2023-08-05 06:43
JUC
原子类: CAS, Unsafe和原子类详解
前言
JUC
中多数类是通过volatile和CAS来实现的,CAS本质上提供的是一种无锁方案,而Synchronized和Lock是互斥锁方案;Java原子类本质上使用的是CAS,而CAS底层是通过Unsafe
淡若飘絮
·
2023-08-05 05:58
搞懂这些框架源码,带你吊打面试官
为了帮助大家从一个码农进阶为优秀的程序员,我精心准备了框架
源码系列
资料,希望能帮你系统的提升实战能力。
冯匿
·
2023-08-04 18:24
cas乐观锁 java_Java的CAS乐观锁原理解析
juc
包中的原子类就是通过CAS来实现了乐观锁。CAS算法涉及到三个操作数:需要读写的内存值V。进行比较的旧值A(期望操作前的值)要写入的新值B。
weixin_39983993
·
2023-08-04 07:49
cas乐观锁
java
18.AtomicReference、AtomicStampReference底层原理。多个变量更新怎么保证原子性?CAS的ABA问题怎么解决?
老王:
JUC
虽然
码农小陈的学习笔记
·
2023-08-04 07:46
java并发专栏
并发编程
线程安全
并发
java
面试
【Spring
源码系列
】Bean生命周期-依赖注入
文章目录前言一、依赖注入介绍【自动注入】示例以及源码调试简单类型注入示例autowire自动注入-简单类型属性注入示例:@Autowired手动注入-简单类型属性注入示例:二、依赖注入源码分析声明关键点源代码解读前言一、依赖注入介绍【自动注入】示例以及源码调试代码示例:@ComponentpublicclassOrderService{}publicclassUserService{private
@来杯咖啡
·
2023-08-03 23:12
spring
spring
java
java高并发系列 - 第19天:
JUC
中的Executor框架详解1
java高并发系列-第19天:
JUC
中的Executor框架详解1这是java高并发系列第19篇文章。
懒羊羊--搞点小技术
·
2023-08-03 23:01
线程
java
python
开发语言
java高并发系列 - 第20天:
JUC
中的Executor框架详解2
java高并发系列-第20天:
JUC
中的Executor框架详解2这是java高并发系列第20篇文章。
懒羊羊--搞点小技术
·
2023-08-03 23:01
线程
java
python
开发语言
java高并发系列 - 第17天:
JUC
中的循环栅栏CyclicBarrier的6种使用场景
java高并发系列-第17天:
JUC
中的循环栅栏CyclicBarrier的6种使用场景这是java高并发系列第17篇。
懒羊羊--搞点小技术
·
2023-08-03 23:28
线程
java
python
开发语言
Spring源码解析(五):循环依赖
Spring
源码系列
文章Spring源码解析(一):环境搭建Spring源码解析(二):bean容器的创建、默认后置处理器、扫描包路径beanSpring源码解析(三):bean容器的刷新Spring源码解析
冬天vs不冷
·
2023-08-03 16:39
spring
spring
java
后端
Spring源码解析(四):单例bean的创建流程
Spring
源码系列
文章Spring源码解析(一):环境搭建Spring源码解析(二):bean容器的创建、默认后置处理器、扫描包路径beanSpring源码解析(三):bean容器的刷新Spring源码解析
冬天vs不冷
·
2023-08-03 16:38
spring
spring
java
后端
Spring源码解析(二):bean容器的创建、注册默认后置处理器、bean定义扫描类
Spring
源码系列
文章Spring源码解析(一):环境搭建Spring源码解析(二):bean容器的创建、默认后置处理器、扫描包路径bean目录一、Spring源码基础组件1、bean定义接口体系2、
冬天vs不冷
·
2023-08-03 16:08
spring
spring
java
后端
上一页
21
22
23
24
25
26
27
28
下一页
按字母分类:
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
其他