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源码系列
【Java】高并发-
JUC
:ReentrantLock重入锁
1.synchronized的局限性synchronized是java内置的关键字,它提供了一种独占的加锁方式。synchronized的获取和释放锁由jvm实现,用户不需要显示的释放锁,非常方便,然而synchronized也有一定的局限性,例如:当线程尝试获取锁的时候,如果获取不到锁会一直阻塞,这个阻塞的过程,用户无法控制如果获取锁的线程进入休眠或者阻塞,除非当前线程异常,否则其他线程尝试获取
Learn Forever
·
2023-04-05 04:56
Java
java
jvm
面试
死磕
源码系列
- ThreadLocal
关于ThreadLocal先问几个问题ThreadLocal基于什么场景下使用?ThreadLocal为什么是弱引用?ThreadLocal一定会发生内存泄漏吗?ThreadLocal的底层是如何实现的(细节)针对上面问题来尝试逐一分析。一、概述每个线程类Thread都有维护两个ThreadLocal.ThreadLocalMap类型的属性publicclassThreadimplementsRu
sunyelw
·
2023-04-05 01:26
JUC
并发编程
java并发编程我们在用java并发编程时会用到java.util.concurrent(简称
JUC
)包,该包下包含了并发编程的类。什么是线程线程(thread)是操作系统能够进行运算调度的最小单位。
健小周
·
2023-04-04 23:17
mybatis
源码系列
(七)—— 反射模块
首先看一下反射模块的核心类:ObjectFactory:MyBatis每次创建结果对象的新实例时,它都会使用对象工厂(ObjectFactory)去构建POJO;ReflectorFactory:创建Reflector的工厂类,Reflector是MyBatis反射模块的基础,每个Reflector对象都对应一个类,在其中缓存了反射操作所需要的类元信息;ObjectWrapper:对对象的包装,抽
KennorWooo
·
2023-04-04 23:14
mybatis源码
mybatis
java反射
反射模块
基于《狂神说Java》
JUC
并发编程--学习笔记
前言:本笔记仅做学习与复习使用,不存在刻意抄袭。------------------------------------------------------------------------------------------------------------给各位学友强烈推荐《遇见狂神说》他的整套Java学习路线使我获益匪浅!!!点击跳转至遇见狂神说哔哩哔哩首页如果你也是狂神的小迷弟,可以加
毫无感情的dj
·
2023-04-04 07:33
学习
多线程进阶详解
多线程进阶详解文章目录多线程进阶详解一、入门介绍二、进程与线程三、Lock锁(重点)四、老版生产者和消费者问题五、Lock版本生产者消费者问题六、8锁现象小结七、集合类不安全List不安全Set不安全八、Callable(简单)九、
JUC
知道越多,知道越少
·
2023-04-04 07:00
并发编程
多线程
并发编程
java
多进程
【
JUC
多线程与高并发】线程进阶,JDK并发包
线程进阶,JDK并发包重入锁ReentranLock方法总结Condition条件信号量(Semaphore)ReadWriteLock读写锁倒计时器:CountDownLatch循环栅栏:CyclicBarrier线程阻塞工具类:LockSupport线程复用:线程池概念Executor框架拒绝策略ThreadFactory扩展线程池JDK并发容器并发集合简介线程安全的HashMapList的线
Be You Want To Be
·
2023-04-04 07:58
JAVA
多线程
java
jdk
多线程
【狂神说笔记】
JUC
并发编程(多线程进阶)
目录
JUC
并发编程(多线程进阶)一、学习方式二、回忆多线程2.1、实现多线程的三种方式2.2、总结2.3、线程和进程2.4、并发和并行2.5、线程有几个状态2.6、wait和sleep的区别2.7、匿名内部类
凉水不好喝
·
2023-04-04 06:20
Java基础
java
开发语言
5W字17张高清图理解同步器框架
前提#并发编程大师DougLea在编写
JUC
(java.util.concurrent)包的时候引入了java.util.concurrent.locks.AbstractQueuedSynchronizer
cuixiaoyan
·
2023-04-04 06:35
juc
JUC
就是java.util.concurrent工具包的简称。
囧白白
·
2023-04-04 04:13
9.
JUC
:多线程相关操作-bite
JUC
Callable:接口:解决Runnable不方面返回结果的问题ReentrantLock信号量:SemaphoreCountDownLatch:等待所有线程执行完毕后,await返回CopyonwriteArrayListHashTable
风生u
·
2023-04-04 01:11
JAVAEE初阶
java
程序人生
经验分享
java多线程进阶(四)LOCK锁及其原理
目录1、实现2、实现思路3、源码阅读3.1、LOCK方法3.1.1、公平锁3.1.2、非公平锁3.1.3、加入与抢占队列3.2、UNLOCK1、实现ReentrantLock是实现Lock接口的锁,是
JUC
烟锁迷城
·
2023-04-03 23:13
多线程
进阶
java
开发语言
Spring
源码系列
--3. Annotation IOC容器
SpringIOC容器对于类级别的注解和类内部的注解分以下两种处理策略:类级别的注解:如@Component、@Repository、@Controller、@Service以及JavaEE6的@ManagedBean和@Named注解,都是添加在类上面的类级别注解,Spring容器根据注解的过滤规则扫描读取注解Bean定义类,并将其注册到SpringIOC容器中。类内部的注解:如@Autowir
威少JAVA
·
2023-04-03 22:07
【JavaEE】多线程笔记第四天(策略锁/CAS/Synchronized原理/
JUC
常见类/多线程环境使用哈希表)
、公平锁VS非公平锁6、可重入锁VS不可重入锁二、CAS什么是CASCAS的实现与应用CAS的ABA问题三、Synchronized原理synchronized的锁策略synchronized原理四、
JUC
小孙的代码星球
·
2023-04-03 09:24
JavaEE
java
开发语言
多线程
面试八股文
Java面试 - 多线程进阶
JUC
并发编程(狂神说
JUC
课堂笔记)(学完吊打面试官)
多线程进阶
JUC
并发编程(需要完整Markdown文件可以私聊我哦)文章目录多线程进阶
JUC
并发编程1.进程和线程2.lock锁(重点)3.生产者和消费者问题4.如何判断锁的是谁?
奶味蓝呀
·
2023-04-03 07:53
java面试
java
面试
逻辑回归原理
#逻辑回归importpandasaspdafname='F://anacondadaima//shu
juc
huli//suanfa//luqu.csv'dataf=pda.read_csv(fname
优化大师傅
·
2023-04-03 05:11
算法
逻辑回归推导
#逻辑回归importpandasaspdafname='F://anacondadaima//shu
juc
huli//suanfa//luqu.csv'dataf=pda.read_csv(fname
优化大师傅
·
2023-04-03 05:40
算法
Java多线程系列 --(
JUC
锁)
欢迎来到飞之折翼的,待双翼饱满就是飞翔之际!源自摘要:https://www.cnblogs.com/skywang12345/p/java_threads_category.html一、框架1、同步锁即通过synchronized关键字来进行同步,实现对竞争资源的互斥访问的锁。Java1.0版本中就已经支持同步锁了。同步锁的原理是,对于每一个对象,有且仅有一个同步锁;不同的线程能共同访问该同步锁
小飞剑客
·
2023-04-03 05:40
Java并发编程专题之AQS
主要参考了博客
JUC
框架源码解析系列文章目录JDK8AbstractQueuedSynchronizer概述实现大量依赖乐观锁的方式(即CAS+自旋)。
tongji4m3
·
2023-04-02 22:01
定时任务的多种实现——xxl-job
定时任务场景特征实现1.死循环2.Timer定时器3.
juc
中定时任务线程池4.延时队列5.SpringScheduling框架xxl-jobxxl-job结构:xxl-job的入门程序:场景1.购物车数据同步
Shawn XY
·
2023-04-02 20:23
java
定时任务
信号量-semaphore -05
juc
引入semaphore来解决这个问题。
愤怒的奶牛
·
2023-04-02 20:15
Spring
源码系列
(4)- spring XML文件的解析
Spring
源码系列
(4)-springXML文件文件的解析前言XmIBeanDefinitionReader开始真正解析封装BeanDefinition前言本章重点将上一篇留下的尾巴说完,本章就一个重点
阳光coding
·
2023-04-02 19:46
spring
java
spring
编程语言
Spring
源码系列
第二篇 XML解析
Spring
源码系列
第二篇XML解析XML解析spring.xml两种标签解析方式1.默认标签解析2.自定义标签解析自定义标签解析流程XML解析spring.xml两种标签解析方式1.默认标签解析默认标签解析是通过流的方式读取
繁简丶
·
2023-04-02 19:45
Spring源码
java
spring
Spring
源码系列
-第4章-Bean初始化流程
文章目录第4章-Bean初始化流程流程图-bean初始化流程AbstractApplicationContext#refresh()AbstractApplicationContext#finishBeanFactoryInitialization()DefaultListableBeanFactory#preInstantiateSingletons()工厂Bean的初始化方式AbstractB
youthlql
·
2023-04-02 19:27
Spring源码
spring
java
后端
Spring
源码系列
-第2章-后置工厂处理器和Bean生命周期
文章目录第2章-后置工厂处理器和Bean生命周期什么是BeanPostProcessor?BeanFactoryPostProcessor的接口关系BeanPostProcessor接口关系什么是InitializingBean?测试类MyBeanPostProcessorMyInstantiationAwareBeanPostProcessorMyMergedBeanDefinitionPost
youthlql
·
2023-04-02 19:26
Spring源码
spring
java
后端
基于SpringBoot与数据库表记录的方式实现简单的分布式锁
同一进程内的不同线程操作共享资源时,我们只需要对资源加锁,比如利用
JUC
下的工具,就可以保证操作的正确性。
SunAlwaysOnline
·
2023-04-02 17:14
#
多线程
JAVA
MySQL
SpringBoot
分布式锁
数据库
Java面试必问之线程池的创建使用、线程池的核心参数、线程池的底层工作原理
一、前言大家在面试过程中,必不可少的问题是线程池,小编也是在面试中被问啥傻了,
JUC
就了解的不多。加上做系统时,很少遇到,自己也是一知半解。
java小霜
·
2023-04-02 17:12
Java面试
java
面试
开发语言
架构
后端
基于SpringBoot与数据库表记录的方式实现分布式锁
同一进程内的不同线程操作共享资源时,我们只需要对资源加锁,比如利用
JUC
下的工具,就可以保证操作的正确性。
java小霜
·
2023-04-02 17:23
SpringBoot
数据库
分布式
java
架构
后端
前入式
JUC
常用类源码分析
CountDownLatchpublicclassCountDownDemo{/***countdown倒计时的意思;允许一个或者多个线程被阻塞,等待其他线程执行完在被唤醒,有点类似join*应用场景:可以用来控制并发量,在某个条件之后实现秒杀*@paramargs*/publicstaticvoidmain(String[]args)throwsInterruptedException{Coun
徐师兄学姿势
·
2023-04-02 15:58
Concurrent
Programming
多线程
并发编程
netty源码分析之pipeline(一)
通过前面的
源码系列
文章中的nettyreactor线程三部曲,我们已经知道,netty的reactor线程就像是一个发动机,驱动着整个netty框架的运行,而服务端的绑定和新连接的建立正是发动机的导火线
weixin_34303897
·
2023-04-02 13:19
netty
数据结构与算法
网络
[Netty]pipeline(一)
作者:简书闪电侠链接:https://www.jianshu.com/p/6efa9c5fa702通过前面的
源码系列
文章中的nettyreactor线程三部曲,我们已经知道,netty的reactor线程就像是一个发动机
Franco蜡笔小强
·
2023-04-02 13:46
Netty
Netty
pipeline
线程池源码
线程池
源码系列
一、接口层次ExecutorExecutorServiceAbstractExecutorServiceThreadPoolExecutorForkJoinPoolScheduleExecutorServiceScheduleThreadPoolExecutorExecutors
`Oracle`
·
2023-04-02 12:02
线程池
java
基于Redisson分布式系统实战案列
分布式锁的由来,是紧随着分布式架构的出现而产生的,在之前的单体架构中,面对线程安全的问题可能使用
JUC
提供的锁即可,但是随着业务不断发展,这时单机满足不了,于是采用分布式集群部署的方式,虽然一定程度解决了性能的瓶颈
Feign.Er
·
2023-04-02 09:01
java
微服务架构
java
redis
redisson
分布式
微服务架构
02-Java常用关键字理解(基础)
注:
源码系列
文章主要是对某付费专栏的总结记录。如有侵权,请联系删除。1static1.1静态变量静态变量:又称为类变量,也就是说这个变量属于类,类所有的实例都共享静态变量,可以直接通过类名来访问它。
xinxisimple
·
2023-04-02 08:33
Nacos(1.4.2)注册中心原理及
源码系列
(三)- 如何支持高并发注册
如何支持高并发注册(异步任务与内存队列设计原理及源码剖析)之前主要分析了SpringCloud集成Nacosclient的服务注册和服务拉取的逻辑,现在接着分析一下NacosServer注册中心的核心功能逻辑及源码,首先来分析Nacos怎么能支持高并发的Intance的注册的。先直接给答案:采用内存队列的方式进行服务注册也就是说客户端在把自己的信息注册到NacosServer的时候,并不是同步把信
louis_zzz
·
2023-04-02 08:24
Nacos
java
快速学习
JUC
并发编程,应对时间紧迫的面试突击。
1.
JUC
概述
JUC
是java.util.concurrent工具包的简称,这是一个处理线程的工具包,jdk1.5开始出现的。
pp~h
·
2023-04-02 07:07
面试专栏
JUC
java并发编程工具类
JUC
第三篇:DelayQueue延时队列
DelayQueue是BlockingQueue接口的实现类,它根据"延时时间"来确定队列内的元素的处理优先级(即根据队列元素的“延时时间”进行排序)。另一层含义是只有那些超过“延时时间”的元素才能从队列里面被拿出来进行处理。DelayQueue队列将阻止其元素对象从队列中被取出,直到达到为元素对象设置的延迟时间。DelayQueue在队列的头部存储最近过期的元素,如果队列内没有元素过期,使用po
字母哥课堂
·
2023-04-02 02:45
RocketMQ
源码系列
(二):RocketMQ路由中心NameServer
这篇文章主要讲解RocketMQ路由管理、服务注册及服务发现机制。1、NameServer架构设计消息中间件的设计思路一般是基于主题的订阅发布机制,消息生产者(Producer)发送某一主题的消息到消息服务器,消息服务器负责该消息的持久化存储,消息消费者(Consumer)订阅感兴趣的主题,消息服务器根据订阅信息(路由信息)将消息推送给消费者(push模式)或者消息消费者主动向消息服务器拉取消息(
水畔竹汐~
·
2023-04-02 01:43
源码专栏
java
JUC
学习笔记(1)-CAS
1.什么是CASCAS是一种无锁执行的算法原理。全称CompareAndSwap其算法核心思想如下/*****以下为伪代码****V:要更新的变量*E:预期更新前的值*U:更新后的值*/booleanCAS(V,E,U){if(V==E){V=U;//当V与预期值相等,则更新并返回truereturntrue;}else{returnfalse;//否则什么也不做}}2.Unsafe类Unsafe
胖小白_d797
·
2023-04-01 23:41
干翻Mybatis
源码系列
之第五篇:Mybatis中核心运行机制超级详细版
一:引言1:本文目的熟悉花哥的都知道,花哥是该粗的地方粗该细的地方细,写文章的话咱追求的还是细致和全面,所以本文意在将Mybatis从SqlSessionFactory被创建出来到Dao被执行成功,我们会将绝大部分的细节写的到位,这是我们本专栏也是本篇文章的目的。2:首要知识回顾1:在我们使用原生Mybatis的时候,我们获取UserDao的实现类对象,还得向下面这么写。基于Spring整合Myb
岁岁种桃花儿
·
2023-04-01 18:56
MyBatis专栏
mybatis
java
开发语言
Nacos
源码系列
(一) 源码编译
Nacos源码编译github下载地址https://github.com/alibaba/nacos/tree/2.0.4用Idea打开添加,注意JDK版本使用1.8,否则在编译的时候可能会出现报错,在idea的EditConfigurations里配置maven命令:-Prelease-nacos-Dmaven.test.skip=truecleaninstall-U配置mysql数据源,进入
Dream_it_possible!
·
2023-04-01 18:39
#
Nacos源码系列
nacos源码编译
c++ 异常处理
转自:http://www.cnblogs.com/gg
juc
heng/archive/2011/12/18/2292089.htmlC++异常处理引言异常,让一个函数可以在发现自己无法处理的错误时抛出一个异常
臻舍
·
2023-04-01 17:23
c++
c++
异常处理
阻塞式队列、定时器、线程池
1.
JUC
:多线程的很多类都在java.util.concurrent这个包里。
Cx330810
·
2023-04-01 15:56
java
开发语言
学习
JUC
之ReentrantLock源码阅读
ReentrantLock是
juc
包里的一种重要的锁。可重入锁,顾名思义,就是一个线程可以重复进入该锁所保护的临界资源。下面通过源码阅读,来一步一步看是怎么实现的。
海蟾子_null
·
2023-04-01 14:21
JUC
并发编程(三)
代码如下:packagecom.wunian.
juc
.help;importjava.util.concurr
勿念及时雨
·
2023-04-01 07:12
多线程进阶学习10------AQS详解
AbstractQueuedSynchronizer,来自于JDK1.5,位于
JUC
包,由并发编程大师DougLea编写,字面翻译就是“抽象队列同步器”,简称为AQS。
四维大脑
·
2023-04-01 04:40
多线程
学习
java
数据结构
aqs
Day143-145.尚品汇:商品上架、ES商品检索 | 动态DSL、搜索条件处理、logstash
目录Day101.商品上架2.根据用户检索的条件编写dsl语句3.更新商品热度4.动态生成dsl语句4.
JUC
、SpringCloud回顾Day111.JMM、CAS、Lock回顾2.DSL商品检索3.
焰火青年·
·
2023-03-31 19:34
尚品汇
java
数据库
服务器
Nacos(1.4.2)注册中心原理及
源码系列
(六)- 心跳检测在集群架构下的设计原理及源码剖析
心跳检测在集群架构下的设计原理及源码剖析刚才分析一下心跳检测的代码,这里不得的不多说一句这里的一个细节设计,如果Nacos是集群的状态,并不是集群中的每节点机器都会检测所有的Instance的心跳,而是用算法来计算每个节点机器需要检测那些Instances,我们来看看源码中是如何计算的:publicbooleanresponsible(StringserviceName){finalListser
louis_zzz
·
2023-03-31 13:18
Nacos
架构
java
阿里面试官必问:LockSupport 是什么?怎么用?享10万字面试手册
LockSupport类是Java6(JSR166-
JUC
)引入的一个类,提供了基本的线程同步原语。LockSupport实际上是调用了Unsafe类里的函数,归结到Uns
90后小伙追梦之路
·
2023-03-31 09:59
java
架构
学习
java
缓存
面试
开发语言
大数据
并发编程
juc
笔记
并发编程
juc
笔记3.Java线程3.1创建和运行线程方法一,直接使用Thread方法二,使用Runnable配合Thread方法三,FutureTask配合Thread3.3查看进程线程的方法windowslinuxJavajconsole
mildness丶
·
2023-03-31 08:10
java
上一页
31
32
33
34
35
36
37
38
下一页
按字母分类:
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
其他