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源码解读
判断是移动端还是PC
navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|
JUC
H5Boy
·
2023-04-16 06:48
ApplicationListener
源码解读
(异步通知、统一ErrorHandler)
简单使用(老司机直接跳过~)定义一个实体类@Data@AllArgsConstructor@NoArgsConstructorpublicclassUserInfo{ privateIntegerage; privateStringname;}复制代码定义一个事件,需要继承ApplicationEvent@Getter@SetterpublicclassCustomEventextendsA
肥肥技术宅
·
2023-04-16 04:19
java
java
spring
开发语言
JUC
源码系列-Semaphore源码研读
前言Semaphore(信号量)也是常用的并发工具之一,它常常用于流量控制。通常情况下,公共的资源常常是有限的,例如数据库的连接数。使用Semaphore可以帮助我们有效的管理这些有限资源的使用。Semaphore的结构和ReentrantLock以及CountDownLatch很像,内部采用了公平锁与非公平锁两种实现,如果你已经看过了ReentrantLock源码分析和CountDownLatc
阿瑞的博客
·
2023-04-16 01:06
面试题
并发编程
源码
并发编程
juc源码
面试
Semaphore
JUC
源码系列-CyclicBarrier源码分析
前言本篇我们来看看另一个和它比较像的并发工具CyclicBarrier。与CountdownLatch的区别将count值递减的线程在CountDownLatch中,执行countDown方法的线程和执行await方法的线程不是一类线程。例如,线程M,N需要等待线程A,B,C,D,E执行完成后才能继续往下执行,则线程A,B,C,D,E执行完成后都将调用countDown方法,使得最后count变为
阿瑞的博客
·
2023-04-16 01:34
源码
面试题
并发编程
并发编程
java面试突击
juc源码
CyclicBarrier
pycharm中使用chatgpt
没有安装pycharm的参考:python和pycharm的安装教程_python和pycharm安装教程_j
juc
ki的博客-CSDN博客一、插件安装pychar
jjucki
·
2023-04-15 19:14
chatgpt
pycharm
JUC
源码系列-ReentrantReadWriteLock
继承关系ReadLock和WriteLock是ReentrantReadWriteLock的两个内部类,Lock的上锁和释放锁都是通过AQS来实现的。AQS定义了独占模式的acquire()和release()方法,共享模式的acquireShared()和releaseShared()方法。还定义了抽象方法tryAcquire()、tryAcquiredShared()、tryRelease()
阿瑞的博客
·
2023-04-15 19:20
面试题
并发编程
源码
并发编程
JUC源码
面试
JUC
源码系列-Lock 和 Condtion
前言前面几篇我们学习了synchronized同步代码块,了解了java的内置锁,并学习了监视器锁的wait/notify机制。在大多数情况下,内置锁都能很好的工作,但它在功能上存在一些局限性,例如无法实现非阻塞结构的加锁规则等。为了拓展同步代码块中的监视器锁,java1.5开始,出现了lock接口,它实现了可定时、可轮询与可中断的锁获取操作,公平队列,以及非块结构的锁。与内置锁不同,Lock是一
阿瑞的博客
·
2023-04-15 19:50
并发编程
面试题
源码
juc源码
并发编程
Lock
JUC
源码系列-ReentrantLock源码研读
前言上一篇我们学习了lock接口,本篇我们就以ReentrantLock为例,学习一下Lock锁的基本的实现。我们先来看看Lock接口中的方法与ReentrantLock对其实现的对照表:Lock接口ReentrantLock实现lock()sync.lock()lockInterruptibly()sync.acquireInterruptibly(1)tryLock()sync.nonfair
阿瑞的博客
·
2023-04-15 19:50
面试题
并发编程
源码
juc源码
并发编程
ReetrantLock
JUC
源码系列-AQS的Condition的接口实现
前言本篇文章是基于线程间的同步与通信(4)——Lock和Condtion这篇文章写的,在那篇文章中,我们分析了Condition接口所定义的方法,本篇我们就来看看AQS对于Condition接口的这些接口方法的具体实现。概述我们在前面介绍Conditon的时候说过,Condition接口的await/signal机制是设计用来代替监视器锁的wait/notify机制的,因此,与监视器锁的wait/
阿瑞的博客
·
2023-04-15 19:47
面试题
并发编程
源码
java
juc源码
并发编程
AQS
mysql8.0源代码解析_
源码解读
:MySQL 8.0 InnoDB无锁化设计的日志系统
原标题:
源码解读
:MySQL8.0InnoDB无锁化设计的日志系统作者介绍张永翔,现任网易云RDS开发,持续关注MySQL及数据库运维领域,擅长MySQL运维,知乎ID:雁南归。
Hsmiau
·
2023-04-15 18:07
mysql8.0源代码解析
mysql
源码解读
——源码介绍
一、mysql介绍数据库行业,特别是关系型数据库行业,在大约二十年前左右,是相当火的,可能现在的搞计算机的体会不深,毕竟各种NoSql和分布式数据库层出不穷。想当年,有一段时间也想当个DBA去外企香一下。会写一手好的Sql语句,实现别人无法实现的功能并且速度更快更安全是面试时的基本要求。当时能接触到的数据库,老的文件型的就不提了,基本就是几家,如Oracle,DB2,赛贝思等,非常少(微软的Sql
fpcc
·
2023-04-15 18:04
数据库开发
mysql
@vue/cli-service version:3.1.2 development 模式
源码解读
2018-11-0406:30:00Cloudyandrainy又是一个美好的周末,早晨六点半就没有了睡意,起床,穿衣服,刷牙(突然想起来,下周要开始新项目了,基础的前端架构该如何搭建呢?继续使用ivew-admin?好像是挺鸡贼的,不过感觉用多了,有点儿弱弱的味道。嗯,快速地刷完牙,打开电脑,clone下来之前写好的的vue-admin,准备愉快地写写代码,然后就发生了接下来的一切......)
田帅奇
·
2023-04-15 17:44
二、netty源码分析之EventLoopGroup
EventLoopGroup是netty中一个比较核心的组件,想要知道EventLoopGroup的功能,我们先看一下EventLoopGroup的类图关系:EventLoopGroupExector是java的
JUC
丑星星
·
2023-04-15 17:03
Dubbo中的服务引用
本系列主要参考官网文档、芋道源码的
源码解读
和《深入理解ApacheDubbo与实战》一书。Dubbo版本为2.6.1。
就这些吗
·
2023-04-15 15:57
JUC
-01 线程的创建和状态转换
本次我们主要讲三个问题线程是什么?线程有哪些状态?各状态间的转换了解吗?创建线程的3种方法你都了解吗?1.线程是什么?(了解即可)进程:进程是一个具有一定独立功能的程序在一个数据集合上依次动态执行的过程。是一个正在执行的程序的实例,包括程序计数器、寄存器和程序变量的当前值等。线程:线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一
ying105525
·
2023-04-15 15:23
JUC
面试
java多线程
面试
JUC
java多线程
高并发
java面试题
gRPC
源码解读
传输层数据处理流程
本篇文章主要介绍gRPCClient传输层的处理流程,如有疑问,欢迎指教。gRPC版本:1.54.0-devgRPC基于http2传输,传输层主要处理http2相关的内容。RFC7540制定了http2协议规范,因此,这部分代码的逻辑绝大部分是按照协议规范实现的。如初始化http2连接、维持心跳、读取/发送Http2Frame,流量控制等等。具体实现上采取读写分离,由两个go协程分别负责frame
yyyyyyyuande
·
2023-04-15 14:29
gRPC
gRPC
JUC
高级九-Synchronized与锁升级
1.synchronized锁优化的背景用锁能够实现数据的安全性,但是会带来性能下降。无锁能够基于线程并行提升程序性能,但是会带来安全性下降。为求平衡将synchronized优化为不在是无所和重锁两个状态,新增偏向锁和轻量级锁来平衡安全性和性能问题synchronized锁:由对象头中的MarkWord根据锁标志位的不同而被复用及锁升级策略2.Synchronized的性能变化2.1java5以
_院长大人_
·
2023-04-15 13:45
JUC
并发
锁升级
java
并发
JUC
锁升级
爱莲说 Ai Lianc Sho
AiLiancShoSogldair:ZhouDunxYipyShuilulcaomumzhhuac,keaizhershenwfancy.JinlTaotYuanssMighdubai
juc
.ZiwLimTagllai
扩展汉语拼音功能
·
2023-04-15 13:06
Synchronized详解(Monitor,轻量级锁,偏向锁,锁膨胀,锁消除,自旋)
博主主页:爪哇贡尘拾Miraitow创作时间:2022年2月18日15:41内容介绍:Synchronized详解参考资料:黑马程序员
JUC
⏳简言以励:列位看官,且将新火试新茶,诗酒趁年华内容较多有问题希望能够不吝赐教欢迎点赞收藏
爪哇贡尘拾Miraitow
·
2023-04-15 11:47
JUC
轻量锁
偏向锁
synchronized
锁膨胀
Monitor
JUC
包:CountDownLatch源码+实例讲解
1缘起有一次听到同事谈及AQS时,我有很多点懵,只知道入队和出队,CLH(Craig,LandinandHagersten)锁,并不了解AQS的应用,同时结合之前遇到的多线程等待应用场景,发现CountDownLatch是使用AQS实现的线程等待,本文即通过实战和源码分析,探究CountDownLatch是如何利用AQS实现线程等待的,帮助读者轻松应对知识交流与考核。2CountDownLatch
天然玩家
·
2023-04-15 08:38
#
Java
ABC
java
juc
countdownlatch
JUC
包:CyclicBarrier源码+实例讲解
1缘起上篇文章讲到了CountDownLatch:https://blog.csdn.net/Xin_101/article/details/129116170作为同系的佼佼者,不得不提CyclicBarrier,设计理念相似,都是多线程等待,但是,应用的技术以及功能不同,下面根据源码及实例讲解,帮助读者轻松应对知识交流与考核。2CyclicBarrier同步辅助工具,允许一组线程相互等待对方达到
天然玩家
·
2023-04-15 08:38
#
Java
ABC
java
CyclicBarrier
【
JUC
】volatile和JMM
【
JUC
】volatile和JMM文章目录【
JUC
】volatile和JMM1.volatile1.1特点1.2内存语义2.内存屏障2.1分类2.2什么叫保证有序性?
嗯mua.
·
2023-04-15 00:27
JUC并发编程
jvm
java
开发语言
【
JUC
】 LockSupport类的park等待和unpark唤醒
【
JUC
】LockSupport类的park等待和unpark唤醒文章目录【
JUC
】LockSupport类的park等待和unpark唤醒1.概述2.API解释3.代码示例3.1先等待再唤醒3.2先唤醒再等待
嗯mua.
·
2023-04-15 00:57
JUC并发编程
java
jvm
开发语言
【
JUC
】Java内存模型之JMM
【
JUC
】Java内存模型之JMM文章目录【
JUC
】Java内存模型之JMM1.概念2.JMM三大特性2.1可见性2.2原子性2.3有序性3.多线程对变量的读写过程4.先行发生原则——happens-before4.1happens-before
嗯mua.
·
2023-04-15 00:54
JUC并发编程
java
jvm
开发语言
「
JUC
并发编程」初识CAS锁(概述、底层原理、原子引用、自旋锁、缺点)
文章目录一、什么是CAS锁概述原理硬件级别保证示例代码源码分析compareAndSet(intexpect,intupdate)二、CAS底层原理UnsafevalueOffsetvolatile源码分析底层汇编总结三、原子引用AtomicReference示例四、自旋锁,借鉴CAS思想什么是自旋锁?示例五、CAS的缺点循环时间长开销很大引出来ABA问题一、什么是CAS锁概述CAS的全称为Com
FrozenPenguin
·
2023-04-14 23:43
JUC并发编程
jvm
java
算法
JUC
高级八-Java对象内存布局和对象头
JUC
高级八-Java对象内存布局和对象头1.对象的内存布局在HotSpot虚拟机里,对象在堆内存中的存储布局可以划分为三个部分:对象头(Header)、实例数据(InstanceData)和对齐填充(
_院长大人_
·
2023-04-14 22:29
JUC
并发
java
juc
对象内存布局
对象头
JUC
高级七-ThreadLocal线程局部变量
JUC
高级七-ThreadLocal线程局部变量1.简介1.1是什么?ThreadLocal提供线程局部变量。
_院长大人_
·
2023-04-14 22:23
JUC
并发
java
juc
ThreadLocal
Java并发——AQS源码解析
本文通过总结源码学习,来分析了解下AQS的工作原理AQS是
juc
包锁实现的基础框架,研究
juc
包源码之前,AQS是必经之路虽然说,平时项目中,我们几乎不会有自己去继承aqs实现锁的需要,但是通过源码了解
Walkerc
·
2023-04-14 21:50
开源Web IDE项目 codesandbox
源码解读
(1)
概述最近在做一个开源的WebIDE项目,阅读了很多源码,为了更方便地使用一些开源模块,把项目从vue转到了react,很多地方来回来去写了好几版。我个人非常喜欢在线的IDE,它们无需下载,即开即用,功能堪比离线IDE,而且非常符合万物皆可Web的想法,这令我非常激动,也是我想要着手写一个自己的WebIDE的原因。现在网上有非常非常多的WebIDE,如js项目可以使用的jsfiddlecodepen
R4M80
·
2023-04-14 19:42
java之 CyclicBarrier 原理
JUC
回顾之-CyclicBarrier底层实现和原理http://www.cnblogs.com/200911/p/6060195.html
JUC
回顾之-CyclicBarrier底层实现和原理1.CyclicBarrier
qq_3365582964
·
2023-04-14 19:59
java
【Java】使用ConcurrentHashMap保证相同的key只会插入一次
前言ConcurrentHashMap在java.util.concurrent(
JUC
)包当中,
JUC
是在jdk1.5后引入的,多数用在并发环境下,更多详细的类可访问:
JUC
-类汇总和学习指南|Java
提笔忘字的帝国
·
2023-04-14 16:36
Java
java
juc
HashMap的秘密(另类角度
源码解读
)
鸡汤 在超凡入圣与无恶不作之间还有第三种抉择,这是所有成熟的成年人都会选择的一条路。因此你会在得失之间求得平衡,两害相权取其轻,尽力将善意放在前面。 --《肖申克的救赎》我们真的懂HashMap吗 关于Java的集合框架,这是一个面试都被问烂了的问题。相信很多人都已经对HashMap的源码掌握得滚瓜烂熟了,面试也能对答
liurenhao
·
2023-04-14 14:54
JUC
并发编程-ReentrantLock原理
ReentrantLockReentrantlock是并发包中一个可重入的锁,是基于AQS(AbstractQueuedSynchronized)实现的,它有公平锁和不公平锁两种实现方式。Reentranlock中有一个内部抽象类Sync继承自AbstractQueuedSynchronized,主要是它来实现锁的功能,Sync在ReentrantLock中有两种实现类:NonfairSync、F
卑微小童
·
2023-04-14 12:21
java
JUC
并发编程与源码分析笔记01-本课程前置知识及要求说明
JUC
是什么
JUC
是指java.util.concurrent包,在并发编程中广泛使用。
王劭阳
·
2023-04-14 12:49
JUC并发编程与源码分析
JUC
JUC
并发编程之AQS原理
1.AQS原理1.1概述全称是AbstractQueuedSynchronizer,是阻塞式锁和相关的同步器工具的框架特点:用state属性来表示资源的状态(分独占模式和共享模式),子类需要定义如何维护这个生态,控制如何获取锁和释放锁getState-获取state状态setState-设置state状态compareAndSetState-cas机制设置state状态独占模式是只有一个线程能够访
晓风残月Lx
·
2023-04-14 12:16
JUC
java
jvm
面试
java并发编程
JUC
并发包之ReentrantLock
java并发编程
JUC
并发包之ReentrantLock概述成员属性及构造方法内部类Sync类NonfairSync类FairSync类常用方法(函数)Condition接口接口中方法condition
二八开
·
2023-04-14 12:43
java
java
多线程
并发编程
thread
JUC
并发编程之ReentrantLock
1.非公平锁实现原理加锁解锁流程构造器默认实现的是非公平锁publicReentrantLock(){sync=newNonfairSync();}NonfairSync继承Sync,Sync继承AbstractQueuedSynchronizer没有竞争时第一个竞争出现时Thread-1执行了CAS尝试将state由0改为1,结果失败进入tryAcquire的逻辑,这时state已经是1,结果仍
晓风残月Lx
·
2023-04-14 12:10
JUC
java
jvm
面试
Spring_纯注解实现AOP技术铺垫 (5)
传统方式实现AOP:2、纯注解的方式实现AOP铺垫:2.1AnnotationConfigApplicationContext2.2AnnotationConfigApplicationContext
源码解读
chen_yao_kerr
·
2023-04-14 02:30
spring
java
spring
boot
RocketMQ 消息发送
源码解读
可靠同步发送、可靠异步发送、单向发送、批量消息发送。RocketMQ消息发送需要考虑以下3个问题。1)消息队列如何进行负载?2)消息发送如何实现高可用?3)批量消息发送如何实现一致性?org.apache.rocketmq.common.message.MessagepublicclassMessageimplementsSerializable{privateStringtopic;//主题pr
键盘闷骚难
·
2023-04-13 19:47
java-rocketmq
rocketmq
java
Synchronized锁详解
在Java中,synchronized锁可能是我们最早接触的锁了,在JDK1.5之前synchronized是一个重量级锁,相对于
juc
包中的Lock,synchronized显得比较笨重。
lixiangchibang
·
2023-04-13 16:12
#
thread
java
开发语言
8.
JUC
线程高级-Condition和线程顺序执行
有的时候我们希望线程按照希望的顺序依次执行,比如线程A,B,C,按照顺序依次执行,这时候就要用到阻塞和唤醒,之前的时候我们学到过wait()和nofity/notifyAll()这两个方法,这里我们使用java.concurrent.locks.Lock接口来实现类似的功能;用到的包和类java.concurrent.locks.Lock:接口|-->java.concurrent.locks.R
匆匆岁月
·
2023-04-13 16:18
JUC
并发编程之线程池
1.自定义线程池步骤1自定义拒绝策略接口(实现函数式接口)//自定义拒绝策略@FunctionalInterfaceinterfaceRejectPolicy{voidreject(BlockingQueuequeue,Ttask);}步骤2自定义任务队列//自定义任务队列@Slf4jclassBlockingQueue{//1.任务队列双端队列privateDequequeue=newArray
晓风残月Lx
·
2023-04-13 16:17
JUC
java
开发语言
Spring WebSocket入门实例、
源码解读
、STOMP客户端
1SpringWebSocket入门实例在浏览器和服务器之间,使用WebSocket发送和接收消息。具体会使用到WebSocket子协议STOMP。1.1创建SpringBoot项目,添加WebSocket依赖后端SpringBoot的WebSocket依赖,前端使用Thymeleaf,所以需要webjars依赖。pom.xml如下:org.springframework.boot
94甘蓝
·
2023-04-13 08:37
项目中的那些事
spring
websocket
java
STOMP
jsonrpc
源码解读
位于$GOROOT/src/net/rpc/jsonrpc包下面的两个文件server.go和client.go是用json的序列化方式实现rpc的调用,默认使用go的rpc调用是传输的数据格式是gob,这是go语言特有的数据格式,能做到跨平台,但是很难做到跨语言,因此用jsonrpc来实现rpc功能,由于传输数据是json格式的,因此能做到跨语言,现在我们来分析一下jsonrpc下面的serve
初级赛亚人
·
2023-04-13 07:49
【1024面试必备】厂长爆肝万字之多线程高并发
JUC
编程⭐建议收藏
(1024程序猿节打卡)厂长爆肝万字之多线程高并发
JUC
编程⭐建议收藏❤️大家好,我是java厂长,1024程序员节也不能忘了学习,厂长带你体验多线程高并发的面试高频!
java厂长
·
2023-04-13 00:06
Java
1024程序员节
java
面试
jvm
juc
JUC
并发编程——CountDownLatch&Semaphore&CyclicBarrier
目录CountDownLatchCountDownLatch使用CountDownLatch源码分析SemaphoreSemaphore使用Semaphore源码分析CyclicBarrierCyclicBarrier使用CyclicBarrier源码分析CountDownLatchJava的concurrent包里面的CountDownLatch其实可以把它看作一个计数器,只不过这个计数器的操作
熟透的蜗牛
·
2023-04-12 21:49
JUC
JUC
多线程
并发编程
Juc
并发编程13——如何实现一个线程池?(万字源码剖析)
前言作者简介:半旧518,长跑型选手,立志坚持写10年博客,专注于java后端专栏简介:
juc
并发编程,讲解锁原理、锁机制、线程池、AQS、并发容器、并发工具等,深入源码,持续更新。
半旧518
·
2023-04-12 21:43
juc
java
开发语言
juc
并发
原力计划
Juc
并发编程11——深入源码:常用并发容器、阻塞队列使用与原理
前言本文将介绍常用的并发容器,比较传统容器与并发容器的区别,介绍并发容器的基本原理。是面试常考、工作常用的热门知识点。深入源码:常用并发容器、阻塞队列使用与原理前言1.传统容器安全吗?2.常用并发容器介绍2.1CopyOnWriteArrayList2.2ConcurrentHashMap3.阻塞队列3.1阻塞队列的介绍3.2ArrayBlockingQueue源码分析3.3Synchronous
半旧518
·
2023-04-12 21:12
juc
java
面试
开发语言
Juc
并发编程06——深入剖析队列同步器AQS源码
我们看下Reentrantock的源码。publicvoidlock(){sync.lock();}publicvoidunlock(){sync.release(1);}原来lock,unlock等核心方法都是通过sync来实现的。而sync其实是它的一个内部类。abstractstaticclassSyncextendsAbstractQueuedSynchronizer{...}这个内部类继
半旧518
·
2023-04-12 21:12
juc
juc
Juc
并发编程08——Condition实现源码分析
看看ReentrantLock中的newCondition方法finalConditionObjectnewCondition(){returnnewConditionObject();}再点进去发现原来就是AQS中的内部类。publicclassConditionObjectimplementsCondition,java.io.Serializable{privatestaticfinallo
半旧518
·
2023-04-12 21:12
juc
juc
上一页
40
41
42
43
44
45
46
47
下一页
按字母分类:
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
其他