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源码系列
较真儿学
源码系列
-ThreadLocal(逐行源码带你分析作者思路)
Java版本:8u261。1简介ThreadLocal是线程本地变量(缓存),其往往用来实现在同一线程内部的变量之间进行交互的情景,不存在线程之间的交互。其对每一个线程内部都维护了一个数据,在a线程set的值,也只能在a线程里进行get。具体的使用场景:比如可以用ThreadLocal来封装数据库连接;也可以在复杂逻辑下,用ThreadLocal来作为方法之间的数据传递:如果一开始设置了一个数据,
天瑕
·
2023-12-28 08:38
Java并发编程
ThreadLocal
ThreadLocal源码分析
从源码全面解析Java 线程池的来龙去脉
作者简介:大家好,我是爱敲代码的小黄,独角兽企业的Java开发工程师,CSDN博客专家,阿里云专家博主系列专栏:Java设计模式、Spring
源码系列
、Netty
源码系列
、Kafka
源码系列
、
JUC
源码系列
如果感觉博主的文章还不错的话
爱敲代码的小黄
·
2023-12-28 08:56
#
高并发
java
面试
开发语言
后端
并发
【并发编程】(十三)
JUC
并发工具包的基础——AQS概述
文章目录1.AQS概念1.1.什么是AQS1.2.AQS的实现原理2.使用AQS实现互斥锁2.1.简单互斥锁实现2.2.可重入的实现1.AQS概念AQS是Java中的一个并发编程的框架,通过这个框架实现了一些并发编程中实用的功能。本篇只会简单的提一下AQS的概念和使用方式,后续的笔记中会依据各个AQS实现类的源码来更深入的解析。1.1.什么是AQSAQS全称AbstractQueuedSynchr
挥之以墨
·
2023-12-28 08:18
#
并发编程
Java
多线程
java
并发编程
Spring
源码系列
(十)MapperScan注解的原理(二)
1.写在前面上篇博客中笔者介绍怎么Import注解中的类给变成一个BeanDefinition添加到Spring的IOC的容器中,主要调用的是这个类(MapperScannerRegistrar)的registerBeanDefinitions(),由于篇幅的原因,笔者只介绍了如何调用的MapperScannerRegistrar类中的registerBeanDefinitions()的方法。具体
了不起的盖茨比。
·
2023-12-28 08:43
Spring
java
spring
Java并发编程面试题——
JUC
专题
文章目录一、AQS高频问题1.1AQS是什么?1.2唤醒线程时,AQS为什么从后往前遍历?1.3AQS为什么用双向链表,(为啥不用单向链表)?1.4AQS为什么要有一个虚拟的head节点1.5ReentrantLock的底层实现原理1.6ReentrantLock的公平锁和非公平锁的区别1.7ReentrantReadWriteLock如何实现的读写锁二、阻塞队列高频问题2.1说下你熟悉的阻塞队列
王二蛋!
·
2023-12-28 07:04
#
金三银四面试
面试
java
并发编程
Spring读
源码系列
番外篇09--BeanWrapper的应用
Spring读
源码系列
番外篇09--BeanWrapper的应用populateBeanapplyPropertyValues小结本文主要讲解BeanWrapper在getBean流程中populateBean
Binary Oracle
·
2023-12-28 07:14
#
Spring源码研读
spring
java
jvm
Java多线程synchronized && Lock && volatile,看完这一篇就够了
线程安全问题一、对线程安全的理解(实际上是内存安全)二、线程同步的实现方法synchronized实现同步Lock实现同步volatile实现同步
JUC
的Callable实现同步三、守护线程四、ThreadLocal
后端漫漫
·
2023-12-28 07:42
Java
java
jvm
开发语言
【java 高并发编程之
JUC
】高阶
JUC
特性总结
1线程中断机制1.1什么是中断?首先一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop,Thread.suspend,Thread.resume都已经被废弃了。其次在Java中没有办法立即停止一条线程,然而停止线程却显得尤为重要,如取消一个耗时操作。因此,Java提供了一种用于停止线程的机制——中断。中断只是一种协作机制,Java没有给中断增加任何语
Young丶
·
2023-12-28 07:37
JUC
java
jvm
开发语言
【java 高并发编程之
JUC
】2w字带你
JUC
从入门到精通
点击查看脑图目录地址,实时更新1什么是
JUC
1.1
JUC
简介在Java中,线程部分是一个重点,本篇文章说的
JUC
也是关于线程的。
JUC
就是java.util.concurrent工具包的简称。
Young丶
·
2023-12-28 07:36
JUC
java
jvm
JUC
Spring
源码系列
:事务原理
Spring
源码系列
:事务原理前言一.事务案例1.1项目结构和表结构1.2代码编写部分1.3配置文件1.4运行结果二.事务自定义标签解析(初始化)2.1注册InfrastructureAdvisorAutoProxyCreator
Zong_0915
·
2023-12-28 07:59
Spring
Java
java
spring
后端
Spring
源码系列
: AOP实现
Spring
源码系列
:AOP实现前言一.AOP的使用二.AOP的实现2.1创建AnnotationAwareAspectJAutoProxyCreator2.1.1注册或升级AnnotationAwareAspectJAutoProxyCreator2.1.2
Zong_0915
·
2023-12-28 07:29
Spring
Java
java
开发语言
后端
【
JUC
并发编程】13 读写锁ReentrantReadWriteLock原理/源码解析
文章目录一、ReentrantReadWriteLock实现原理1、概述1)面试题2:为什么要使用读写锁?2)面试题3:为什么读写锁中读锁和写锁采用一个变量来标识?3)面试题4:读写锁如何保证写线程不饿死?4)如何使用读写锁?2、源码分析原理1)面试题1:读写锁如何实现的(实现原理)?2)成员变量/构造函数1>内部类Sync1>面试题5:为什么实例化Sync时要获取到state变量之后再setSt
秃秃爱健身
·
2023-12-28 07:23
#
精通JUC并发编程
java
juc
面试
【
JUC
并发编程】1 ThreadPoolExecutor线程池源码解析
文章目录一、为什么要使用线程池?二、ThreadPoolExecutor源码分析1.常用变量2.构造方法3.任务执行过程execute()4.addWorker()方法5.runWorker()方法6.processWorkerExit()1)如果线程池中的线程异常终止,线程池的工作线程数量会减少吗?7.shutdown()和shutdownNow()的区别三、总结一、为什么要使用线程池?降低资源
秃秃爱健身
·
2023-12-28 07:53
#
精通JUC并发编程
java
线程池
多线程
【
JUC
并发编程】 16 深入理解AQS的实现原理、源码分析
文章目录一、AQS原理1、AQS是什么?2、AQS的核心:CLH队列3、以独占锁同步状态的获取和释放为例:4、从具体的代码实现来看1)互斥锁`acquire()`获取互斥锁`release()`释放互斥锁2)共享锁`acquireShared()`获取共享锁`releaseShared()`释放共享锁5、面试题2:AQS中线程Node节点的PROPAGATE状态是什么意思?二、AQS源码分析1、a
秃秃爱健身
·
2023-12-28 07:53
#
精通JUC并发编程
java
【
JUC
并发编程】7 ReentrantLock锁机制原理/源码分析
文章目录一、Lock原理1、lock()获取锁流程2、unlock()释放锁流程:3、面试题2:为什么非公平锁的性能优于公平锁?二、ReentrantLock源码分析1、变量和构造器2、lock()加锁1)非公平锁的加锁2)公平锁的加锁3、unlock()释放锁一、Lock原理以ReentrantLock为例,其是基于AQS实现的可重入锁。1>ReentrantLock把所有Lock接口的操作都委
秃秃爱健身
·
2023-12-28 07:53
#
精通JUC并发编程
java
1.5 单结晶体管和晶闸管
一、单结晶体管1、单结晶体管的结构和等效电路在一个低掺杂的N型硅棒上利用扩散工艺形成一个高掺杂P区,在P区与N区接触面形成PN结,就构成了单结晶体管(UJT:Uni
juc
tionTransistor)。
passxgx
·
2023-12-28 06:57
#
第1章
半导体常用器件
硬件工程
模拟Spring缓存机制
阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入
juc
源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析在日常开发中,缓存是提高系统吞吐量的常见手段。不论是使用Guava、Re
smart哥
·
2023-12-27 19:44
spring专题
spring
缓存
java
Redis布隆过滤器BloomFilter
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2023-12-27 16:30
数据库技术
redis
数据库
缓存
Redis案例实战之Bitmap、Hyperloglog、GEO
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2023-12-27 16:00
数据库技术
redis
数据库
缓存
假装情侣系统H5支持分销易支付公众号源码
假装情侣系统三级分销可对接易支付官方支付开通会员独立saas框架支持H5公众号全局聊天共享资源数据演示站:https://yw.
juc
esoft.cn
爱哭的小张
·
2023-12-27 00:51
微信公众平台
微信开放平台
微信
php
JUC
并发编程
来源:【尚硅谷】大厂必备技术之
JUC
并发编程2021最新版1什么是
JUC
1.1
JUC
简介在Java中,线程部分是一个重点,本篇文章说的
JUC
也是关于线程的。
永恒_顺其自然
·
2023-12-26 13:07
java
JUC
1、什么是
JUC
源码+官方文档业务:普通的线程代码ThreadRunnable没有返回值、效率相比入Callable相对较低!
浅梦2023
·
2023-12-26 13:07
java
多线程
并发编程
多进程
JUC
Thread 基础回顾
文章目录并行与并发进程与线程线程切换上下文创建线程的方法用户线程和守护线程Thread常用方法实例方法类方法线程打断示例线程的状态线程安全怎样尽可能的避免线程安全问题线程同步synchronized经典示例错误写法添加synchronized关键字最小化同步块最小化同步块,并进行重入判断Monitor监视器(管程)Monitor的核心组成部分锁优化轻量级锁自旋优化偏向锁偏向锁和轻量级锁锁消除wai
没事儿写两篇
·
2023-12-26 13:33
人在江湖之J.U.C
详解
wait/notify
synchronized
锁优化
锁自旋
偏向锁
Java并发(十八)----常见线程安全类及实例分析
1、常见线程安全类StringIntegerStringBufferRandomVectorHashtablejava.util.concurrent(
JUC
)包下的类这里说它们是线程安全的是指,多个线程调用它们同一个实例的某个方法时
|旧市拾荒|
·
2023-12-26 03:02
#
Java并发
java
开发语言
DelayQueue和时间轮
DeylayQueue
JUC
中的延迟队列,看下面这两篇文章;https://www.jianshu.com/p/e0bcc9eae0aehttps://blog.csdn.net/dkfajsldfsdfsd
NazgulSun
·
2023-12-26 00:04
Collections 工具类和 Arrays 工具类常见方法
ConnectionsConnections工具类常用的方法:1.排序2.查找,替换排序3.同步控制(不推荐,线程安全的集合类型时请考虑使用
JUC
包下的并发集合)排序操作voidreverse(Listlist
不正经的程序员小龙
·
2023-12-25 23:11
ReenTrantLock源码浅析
##ReenTrantLock是什么ReenTrantLock是
juc
包下的一个经典的互斥锁,也是**可重入锁**(即当前线程在已经获取改锁后重复执行获取锁操作时不会引起死锁,并且不需要执行获取锁的操作
小阿宅java
·
2023-12-25 17:37
java并发编程系列-volatile内存实现和原理
volatile关键字的作用是保证多线程中变量的可见性,是
JUC
包中的核心。在内存模型基础中已经提到过,JVM是分为堆内存和栈内存的,堆内存在线程之间共享,而栈内存为线程内部私有,对其他线程不
起个名忒难
·
2023-12-25 14:39
【
JUC
】Java对象内存布局和对象头
【
JUC
】Java对象内存布局和对象头文章目录【
JUC
】Java对象内存布局和对象头1.对象的内存布局1.1对象头1.1.1对象标记1.1.2类元信息/类型指针1.2实例数据1.3对齐填充2.测试1.对象的内存布局在
嗯mua.
·
2023-12-25 01:29
JUC并发编程
java
jvm
数据结构
【
JUC
】二十八、synchronized锁升级之偏向锁
文章目录1、偏向锁出现的背景2、从共享对象的内存结构看偏向锁3、偏向锁的持有4、启动偏向锁5、sleep暂停来启动偏向锁6、偏向锁的撤销7、总体流程8、SinceJava15偏向锁的废除1、偏向锁出现的背景如果一个线程连续几次抢到锁,仍然重复加锁解锁,就会导致用户态和内核态频繁切换,这显然是有改进空间的。如之前买票的例子:publicclassSaleTick{publicstaticvoidma
-代号9527
·
2023-12-25 01:12
JUC
java
偏向锁
锁升级
我的
源码系列
: 使用Node.js实现一个express框架
我的手写
源码系列
往期本人手写框架
源码系列
原创:从零实现一个简单版React(附源码)原创:如何自己实现一个简单的webpack构建工具【附源码】深度:手写一个WebSocket协议[7000字]深度:从零编写一个微前端框架
Peter 谭
·
2023-12-24 22:58
中间件
js
epoll
rpc
vue
Volatile理解
JavaVolatile1.volatile理解2.volatile不保证原子性3.Volatile禁止指令重排4.volatile的应用
JUC
(java.util.concurrent)进程和线程进程
wanggs
·
2023-12-24 17:44
Ubuntu20.04 Linux系统安装mujoco和mujoco_py
Ubuntu20.04Linux系统安装mu
juc
o200和mujoco_pymujoco的功能就不介绍了,熟悉强化学习的同学应该都知道,这个一个功能非常强大的物理引擎,通过mujoco生成强化学习环境
唯唯诺诺王德发
·
2023-12-23 23:42
强化学习
ubuntu
python
linux
详解
JUC
中的基础组件AQS
AQS是
JUC
包中的基础组件,许多同步器例如ReentrantLock、Semaphore等都是基于AQS实现的,如果不懂AQS,怎敢说自己懂并发编程?
tangzhenhao
·
2023-12-23 16:51
JUC
并发编程 07——Java中的并发工具类
目录一.等待多线程完成的CountDownLatchjoinCountDownLatch二.同步屏障CyclicBarrier三.CyclicBarrier和CountDownLatch的区别四.控制并发线程数的Semaphore应用场景Semaphore实现原理一.等待多线程完成的CountDownLatchCountDownLatch允许一个或多个线程等待其他线程完成操作。join假如有这样一
汤姆&Tom
·
2023-12-23 06:05
JUC并发编程
java
开发语言
JUC
并发编程 05——volatile
一.volatile的前世今生Java语言规范中对volatile的定义如下:Java编程语言允许线程访问共享变量,为了确保共享变量能被准确和一致地更新,线程应该确保通过排他锁单独获得这个变量。Java语言提供了volatile,在某些情况下比锁要更加方便。如果一个字段被声明成volatile,Java线程内存模型确保所有线程看到这个变量的值是一致的。这句话该怎么理解呢?别急,为了更好的理解这个概
汤姆&Tom
·
2023-12-23 06:04
JUC并发编程
java
jvm
开发语言
JUC
并发编程 06——Synchronized与锁升级
一.Java对象内存布局和对象头在HotSpot虚拟机里,对象在堆内存中的存储布局可以划分为三个部分:对象头(Header)、实例数据(InstanceData)和对文填充(Padding)。对象内部结构分为:对象头、实例数据、对齐填充(保证8个字节的倍数)。对象头分为对象标记(markOop)和类元信息(klassOop),类元信息存储的是指向该对象类元数据(klass)的首地址。对象头在64位
汤姆&Tom
·
2023-12-23 06:04
JUC并发编程
java
开发语言
JUC
并发编程 08——原子操作类
目录一.原子更新基本类型类实现原理二.原子更新数组三.原子更新引用类型四.原子更新字段类Java从JDK1.5开始提供了J.U.C下的atomic包,atomic包提供了一系列的操作简单,性能高效,并能保证线程安全的类去更新基本类型变量,数组元素,引用类型以及更新对象中的字段类型。atomic包里的类基本都是使用Unsafe实现的包装类,使用Unsafe提供的三个CAS方法结合死循环实现的,也就是
汤姆&Tom
·
2023-12-23 06:27
JUC并发编程
java
开发语言
Redis大Key问题
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2023-12-22 21:47
数据库技术
redis
数据库
缓存
Mysql索引优化
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2023-12-22 21:47
数据库技术
mysql
数据库
Redis浅谈
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2023-12-22 21:17
数据库技术
redis
数据库
缓存
Mysql的SQL优化和锁
作者简介:大家好,我是爱吃芝士的土豆倪,24届校招生Java选手,很高兴认识大家系列专栏:Spring源码、
JUC
源码、Kafka原理、分布式技术原理、数据库技术如果感觉博主的文章还不错的话,请三连支持一下博主哦博主正在努力完成
爱吃芝士的土豆倪
·
2023-12-22 21:16
数据库技术
mysql
sql
数据库
【
JUC
】七、读写锁的演化 && 锁降级
文章目录1、读写锁2、读写锁的特点3、锁演变的代码体现4、锁的演变总结5、读写锁的降级6、写锁饥饿现象7、复习:悲观锁和乐观锁1、读写锁
JUC
下的锁包的ReadWriteLock接口,以及其实现类ReentrantReadWriteLockReadWriteLock
-代号9527
·
2023-12-22 12:02
JUC
java
JUC
线程安全
读写锁
锁降级
【
JUC
】三十二、邮戳锁StampedLock
文章目录1、邮戳锁2、锁饥饿问题的解决思路3、邮戳锁的特点4、代码演示:邮戳锁的传统读写用法5、代码演示:邮戳锁之乐观读6、邮戳锁的缺点7、终章回顾前面提到了从无锁⇒独占锁⇒读写锁,但读写锁存在写锁饥饿的情况。【读写锁的演化与锁降级】本篇邮戳锁(也称版本锁、票据锁)即是对读写锁的再一次演化。1、邮戳锁StampedLock是JDK1.8中新增的一个读写锁,也是对JDK1.5中的读写锁Reentra
-代号9527
·
2023-12-22 12:57
JUC
lock
java
juc
最详细的 linux grep命令教程
链接:http://www.cnblogs.com/gg
juc
heng/archive/2013/01/13/2856896.html简介grep(globalsearchregularexpression
创造new_world
·
2023-12-22 09:00
超详细!AQS(AbstractQueuedSynchronizer)源码解析
DougLea在java.util.concurrent(
JUC
)中提供一套基础工具用于帮助开发者更加方便的开发并发程序,包括Lock、Semaphore、CountDownLatch、CyclicBarrier
洞庭湖上的麻雀
·
2023-12-22 07:52
较真儿学
源码系列
-MyBatis核心流程源码分析
Mybatis版本:3.5.10-SNAPSHOT。1简介MyBatis是一款优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置,并将原始类型、接口和JavaPOJO映射到数据库的记录中。现在国内的开发环境不知道从什么时候开始传出一种风气,不管开发出什么框架,都要往大而
天瑕
·
2023-12-22 03:00
MyBatis
MyBatis
设计模式
Spring
J.U.C(二)AQS
AbstractQueuedSynchronizer-AQS是
juc
的核心,提供了一个先进先出队列,提供了锁个其他同步装置的基础框架privatevolatileintstate;表示状态使用方法是继承
胖达_4b7e
·
2023-12-22 00:29
【Java 集合】LinkedBlockingQueue
LinkedBlockingQueue,顾名思义:基于链表的阻塞队列,位于
JUC
(java.util.concurrent)下,是一个线程安全的集合,其本身具备了不支持null元素:存入null元素会抛出异常固定不限容量
lcn29
·
2023-12-21 18:59
#
Java
集合
Java
Java
集合
java基础入门-22-【多线程&
JUC
】
Java基础入门-22-【多线程&
JUC
】31、多线程&
JUC
1.实现多线程1.1简单了解多线程【理解】1.2并发和并行【理解】1.3进程和线程【理解】1.4实现多线程方式一:继承Thread类【应用】
良辰美景好时光
·
2023-12-21 12:27
java入门
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
其他