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源码系列
问题未解决 | this.wait()和Thread.currentThread().wait()有啥区别
不明白这是为啥packagecom.example.
juc
;//演示持有同个对象锁的方法被多个线程同时调用的情况//结果持有同
w_3123454
·
2024-08-24 04:11
今天碰到了一个问题
并发编程
对象锁
并发编程
wait方法
JavaGuide知识点整理——集合使用注意事项总结
这是因为isEmpty()方法的可读性更好,并且时间复杂度为O(1).不过也有很多复杂度不是O(1)的,比如
JUC
包下的某些集合ConcurrentLinkedQueue、ConcurrentHashMap
唯有努力不欺人丶
·
2024-03-17 22:16
JUC
多线程与高并发(一)
1.谈谈对volatile的理解volatile是java虚拟机提供的一种轻量级的同步机制保证可见性不保证原子性禁止指令重排相当于轻量级的sychronized1.1.JMM的理解JMM,java内存模型JavaMemoryModel,是一种抽象的概念,并不真实存在,它描述的是一组规则或规范,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素)的访问方式。JMM关于同步的
JasonHuan1123
·
2024-03-17 21:02
计算机类
linux
java
jvm
缓存
开源ETL工具
转载:https://blog.csdn.net/
juc
eli/article/details/81448224ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取
SkTj
·
2024-02-20 20:15
我的2023,如履薄冰,你说我能保住这份工吗
7月份开始连载Spring
源码系列
。相比于往年,今年的技术更新确实慢了很多,有
·
2024-02-20 16:46
2023-年度总结
redo log —— MySQL宕机时数据不丢失的原理
扫描下方二维码或者微信搜索公众号菜鸟飞呀飞,即可关注微信公众号,阅读更多Spring源码分析、Java并发编程和Netty
源码系列
文章。问题在开始阅读本文之前,可以先思考一下下面两个问题。
天堂2013
·
2024-02-20 02:00
MySQL
MySQL
redo
log
java
并发编程-
JUC
-原子类
JUC
整体概览原子类基本类型-使用原子的方式更新基本类型AtomicInteger:整形原子类AtomicLong:长整型原子类AtomicBoolean:布尔型原子类引用类型AtomicReference
developer@liyong
·
2024-02-19 20:30
Java
多线程与并发
Java
CAS
ABA
原子类
并发编程-Synchronized
主要原因,是因为JDK1.6之前,synchronized是一个重量级锁相比于
JUC
的锁显得非常笨重,存在性能问题。
developer@liyong
·
2024-02-19 20:59
Java
多线程与并发
Java
管程
锁升级
synchronized
Netty
源码系列
之 FastThreadLocal源码
目录Netty优化方案之FastThreadLocal前言ThreadLocalThreadLocal是干什么的?为什么要使用ThreadLocal工具类去操控存取目标数据到Thread线程?ThreadLocal的使用场景目标数据存储到Thread线程对象的哪里?怎么样把一个目标数据,存储到某一线程的threadLocals(Map)中?ThreadLocal中如何解决哈希冲突(哈希碰撞)的?线
etcEriksen
·
2024-02-14 21:34
Netty源码
java
后端
netty
java面试题/认证答辩 ---
JUC
并发包
参考:>https://blog.csdn.net/xy3233/article/details/93607956
JUC
并发包包含:1)原子类(Atomic)2)锁框架(locks)3)同步器框架(AbstractQueuedSynchronizer
Fuly1024
·
2024-02-14 05:32
面试刷题
juc
JUC
多线程并发编程10-CopyOnWriteArrayList源码剖析
今天来说一说CopyOnWriteArrayList类,纵观
JUC
包下并发List只有CopyOnWriteArrayList类。
Demo_zfs
·
2024-02-12 18:01
Sentinel-Go
源码系列
(三)滑动时间窗口算法的工程实现
要说现在工程师最重要的能力,我觉得工程能力要排第一。就算现在大厂面试经常要手撕算法,也是更偏向考查代码工程实现的能力,之前在群里看到这样的图片,就觉得很离谱。算法与工程实现在Sentinel-Go中,一个很核心的算法是流控(限流)算法。流控可能每个人都听过,但真要手写一个,还是有些困难。为什么流控算法难写?以我的感觉是算法和工程实现上存在一定差异,虽然算法好理解,但却没法照着实现。举个例子,令牌桶
捉虫大师
·
2024-02-12 17:19
Vue
源码系列
讲解——模板编译篇【二】(模板解析阶段)
目录1.整体流程2.回到源码3.总结1.整体流程上篇文章中我们说了,在模板解析阶段主要做的工作是把用户在标签内写的模板使用正则等方式解析成抽象语法树(AST)。而这一阶段在源码中对应解析器(parser)模块。解析器,顾名思义,就是把用户所写的模板根据一定的解析规则解析出有效的信息,最后用这些信息形成AST。我们知道在模板内,除了有常规的HTML标签外,用户还会一些文本信息以及在文本信息中包含过滤
小彭努力中
·
2024-02-12 15:36
Vue源码讲解
vue.js
前端
前端框架
Netty
源码系列
之 ChannelPipeline & IO处理回顾 源码
目录ChannelPipeline【包含AbstractUnsafe.write的源码流程,比之前更加深化了,必看】ChannelPipeline概念回顾ChannelPipeline的创建Inbound(输入Handler)所对应的事件传播Outbound(输出Handler)所对应的事件传播【包含AbstractUnsafe.write的源码流程,比之前更加深化了,必看】ChannelPipe
etcEriksen
·
2024-02-12 08:27
Netty源码
java
后端
netty
Vue
源码系列
讲解——虚拟DOM篇【四】(优化更新子节点)
目录1.前言2.优化策略介绍3.新前与旧前4.新后与旧后5.新后与旧前6.新前与旧后7.回到源码8.总结1.前言在上一篇文章中,我们介绍了当新的VNode与旧的oldVNode都是元素节点并且都包含子节点时,Vue对子节点是先外层循环newChildren数组,再内层循环oldChildren数组,每循环外层newChildren数组里的一个子节点,就去内层oldChildren数组里找看有没有与
小彭努力中
·
2024-02-12 06:07
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
讲解——模板编译篇【一】(综述)
目录1.前言2.什么是模板编译3.整体渲染流程4.模板编译内部流程4.1抽象语法树AST4.2具体流程5.总结1.前言在前几篇文章中,我们介绍了Vue中的虚拟DOM以及虚拟DOM的patch(DOM-Diff)过程,而虚拟DOM存在的必要条件是得先有VNode,那么VNode又是从哪儿来的呢?这就是接下来几篇文章要说的模板编译。你可以这么理解:把用户写的模板进行编译,就会产生VNode。2.什么是
小彭努力中
·
2024-02-12 06:06
Vue源码讲解
vue.js
前端
前端框架
多线程&
JUC
:线程池原理、自定义线程池详细解析
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:多线程&
JUC
:等待唤醒机制(生产者消费者模式)订阅专栏:多线程&
JUC
希望文章对你们有所帮助线程池是一个比较好玩的东西,在做项目的过程中多少也是接触过的
布布要成为最负责的男人
·
2024-02-11 13:45
多线程&JUC
java
开发语言
线程池
JUC
面试
javase
Vue
源码系列
4------Vue文件的入口-----Vue的初始化
这片文章主要分析,在web应用下,Runtime+Compiler构建出来的Vue.js。入口文件在Vue源码中,入口文件为src/platforms/web/entry-runtime-with-compiler.js。入口文件通过export导出的是一个Vue对象,通过import导入相关依赖组件。首先这个Vue对象来自于;而runtime/index中的Vue对象又来自于;core/inde
Emily Qin
·
2024-02-11 09:42
前端
#
Vue.js
源码解析
Vue
Java 乐观锁和悲观锁
文章目录Java乐观锁和悲观锁1、悲观锁2、乐观锁2.1CAS2.2模拟CAS算法2.3
JUC
2.4CAS中的ABA问题2.5使用CAS会引发的问题Java乐观锁和悲观锁1、悲观锁总是假设最坏的情况,每次在去获取共享数据的时候都认为别人会修改
WYSCODER
·
2024-02-11 05:37
Java
java
程序人生
开发语言
JUC
并发编程---ReentrantLock源码分析
1.ReentrantLockReentrantLock从名字看–重入锁(和synchronized关键字一样),同个线程在重复获取锁的话,会自动获取锁,而不是等待。ReentrantLock中又包含了公平锁、非公平锁的概念。下面列出构造函数和常用方法。publicclassReentrantLockimplementsLock,java.io.Serializable{privatefinalS
~clockwork~
·
2024-02-11 01:31
Java
java阻塞唤醒线程之LockSupport
此工具类属于
juc
包的一部分,所在包路径:java.util.concurrent.locks.LockSupport。
水煮鱼又失败了
·
2024-02-11 01:53
Vue
源码系列
讲解——虚拟DOM篇【三】(更新子节点)
1.前言在上一篇文章中,我们了解了Vue中的patch过程,即DOM-Diff算法。并且知道了在patch过程中基本会干三件事,分别是:创建节点,删除节点和更新节点。创建节点和删除节点都比较简单,而更新节点因为要处理各种可能出现的情况所以逻辑略微复杂一些,但是没关系,我们通过分析过程,对照源码,画逻辑流程图来帮助我们理解了其中的过程。最后我们还遗留了一个问题,那就是在更新节点过程中,新旧VNode
小彭努力中
·
2024-02-10 08:38
Vue源码讲解
前端
vue.js
前端框架
为什么世界还存在饥荒,却舍得花几十亿元在航空航天事业
1970年,赞比亚修女玛丽·尤肯达(Mary
Juc
unda)给恩斯特·施图林格(ErnstStuhlinger)博士写了一封信。施图林格因在火星之旅工程中的原创性研究,成
书荒杂谈
·
2024-02-09 18:44
JUC
-java并发编程的艺术
一、并发问题上下文切换:CPU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这个任务的状态。所以任务从保存到再加载的过程就是一次上下文切换。多线程不一定快:多线程有线程创建和上下文切换的开销。减少上下文切换:无锁并发:多线程竞争锁时,会引起上下文切换,所以多线程处理数据时,可以用一些办法来避免使用锁
HBryce24
·
2024-02-09 16:53
并发
java
JUC
-并发面试题
一、基础1、为什么要并发编程充分利用多核CPU的资源2、并发编程存在的问题上下文切换:PU通过时间片分配算法来循环执行任务,当前任务执行一个时间片后会切换到下一个任务。在切换前会保存上一个任务的状态,以便下次切换回这个任务时,可以再加载这个任务的状态。任务从保存到再加载的过程就是一次上下文切换。线程创建和上下文切换的带来而外的开销线程安全死锁:线程A持有资源,线程B持有资源;他们都想申请对方的资源
HBryce24
·
2024-02-09 16:53
并发
java
Vue
源码系列
讲解——变化侦测篇【下】(Array的变化侦测)
目录1.前言2.在哪里收集依赖3.使Array型数据可观测3.1思路分析3.2数组方法拦截器3.3使用拦截器4.再谈依赖收集4.1把依赖收集到哪里4.2如何收集依赖4.3如何通知依赖5.深度侦测6.数组新增元素的侦测7.不足之处8.总结1.前言上一篇文章中我们介绍了Object数据的变化侦测方式,本篇文章我们来看一下对Array型数据的变化Vue是如何进行侦测的。为什么Object数据和Array
小彭努力中
·
2024-02-09 07:57
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
讲解——虚拟DOM篇【一】(Vue中的虚拟DOM)
目录1.前言2.虚拟DOM简介2.1什么是虚拟DOM?2.2为什么要有虚拟DOM?3.Vue中的虚拟DOM3.1VNode类3.2VNode的类型3.2.1注释节点3.2.2文本节点3.2.3克隆节点3.2.4元素节点3.2.5组件节点3.2.6函数式组件节点3.2.7小结3.3VNode的作用4.总结1.前言虚拟DOM,这个名词作为当下的前端开发人员你一定不会陌生,至少会略有耳闻,但不会闻所未闻
小彭努力中
·
2024-02-09 07:57
Vue源码讲解
vue.js
前端
前端框架
Vue
源码系列
讲解——虚拟DOM篇【二】(Vue中的DOM-Diff)
目录1.前言2.patch3.创建节点4.删除节点5.更新节点6.总结1.前言在上一篇文章介绍VNode的时候我们说了,VNode最大的用途就是在数据变化前后生成真实DOM对应的虚拟DOM节点,然后就可以对比新旧两份VNode,找出差异所在,然后更新有差异的DOM节点,最终达到以最少操作真实DOM更新视图的目的。而对比新旧两份VNode并找出差异的过程就是所谓的DOM-Diff过程。DOM-Dif
小彭努力中
·
2024-02-09 07:24
Vue源码讲解
前端
vue.js
JUC
:生产者消费者模式
文章目录虚假唤醒(spuriouswakeup)生产者与消费者模板生产者与消费者模式:synchronized虚假唤醒(spuriouswakeup)当需要条件判断使用wait()方法时,应该使用循环,而不是if,否则就可能会出现虚假唤醒(spuriouswakeup)的情况简单点理解,虚假唤醒就是除了理应被唤醒的线程之外,还另外唤醒了其它的线程,导致的数据的错误虚假唤醒的原理:例:publicc
ZRJ0618
·
2024-02-09 06:40
JUC
java
多线程
认识多线程:等待唤醒机制
packagecom.pccc.pactera.
juc
01;publicclassTestProducterAndConsumer{publicstaticvoidmain(String[]args){
斩天拔剑书
·
2024-02-09 06:40
java编程思想
多线程详解&
JUC
线程的基本知识1.线程的介绍1.1简介线程是进程中的一个实体,线程本身是不会独立存在的。进程是代码在数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,线程则是进程的一个执行路径,一个进程中至少有一个线程,进程中多个线程共享进程的资源。操作系统在分配资源时是把资源分配给进程的,但是CPU资源比较特殊。它是被分配到线程的,因为真正要占用CPU运行的是线程,所以也说线程是CPU分配的基本单位
王叮咚
·
2024-02-09 06:09
多线程
java
面试
JUC
多线程编程之生产者与消费者问题(Synchronized和
JUC
版)
生产者与消费者问题在面试中,生产者与消费者是高频问题之一1.生产者和消费者问题Synchronized版publicclassA{publicstaticvoidmain(String[]args){Datadata=newData();newThread(()->{for(inti=0;i{for(inti=0;i{for(inti=0;i{for(inti=0;i"+number);//通知其
不会编程的派大星
·
2024-02-09 06:09
JUC并发编程
java
多线程
并发编程
juc
锁
Java 的 多线程&
JUC
目录什么是多线程?并发和并行多线程的实现方式多线程的第一种实现方式多线程的第二种实现方式多线程的第三种实现方式小结多线程中常见的成员方法常用简单方法线程的优先级守护线程(备胎线程)礼让线程和插入线程(了解)线程的生命周期线程安全的问题同步代码块同步方法Lock锁死锁多线程的等待唤醒机制(生产者和消费者)消费者代码实现生产者代码实现总体代码实现阻塞队列实现等待唤醒机制线程的状态综合练习一线程栈线程池
三池丶
·
2024-02-09 06:38
java
jvm
开发语言
多线程 生产者与消费者 遇到的问题以及解决方法
目录最原始的生产者消费者模型问题一:产品product>=1时wait问题二:增加一些消费者和生产者线程最原始的生产者消费者模型packagecom.
juc
;/**生产者和消费者案例*/publicclassTestProductorAndConsumer1
小白鼠丶
·
2024-02-09 06:06
多线程
JUC
多线程
生产者消费者
JUC
:4_3并发协作模型:生产者消费者问题:精准唤醒condition、condition应用场景
JUC
:4_3并发协作模型:生产者消费者问题:精准唤醒condition、condition应用场景condition是什么?应用场景condition精确唤醒代码结果输出condition是什么?
郝开
·
2024-02-09 06:06
并发编程
java
面试
多线程
经验分享
JUC
:4_2并发协作模型:生产者消费者问题:if虚假唤醒,防止虚假唤醒
JUC
:4_2并发协作模型:生产者消费者问题:if虚假唤醒,防止虚假唤醒线程之间的通信,如何交替执行?
郝开
·
2024-02-09 06:36
并发编程
java
后端
经验分享
多线程
面试
多线程&
JUC
:线程的生命周期与安全问题
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:多线程&
JUC
:多线程的实现和常用成员方法(守护、礼让、插入线程)订阅专栏:多线程&
JUC
希望文章对你们有所帮助这一部分内容似乎有在面经中看到过
布布要成为最负责的男人
·
2024-02-09 06:35
多线程&JUC
安全
java
JUC
面试
javase
多线程&
JUC
:解决线程安全问题——synchronized同步代码块、Lock锁
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:多线程&
JUC
:线程的生命周期与安全问题订阅专栏:多线程&
JUC
希望文章对你们有所帮助上一部分讲解了面试可能会问的线程的生命周期,并且演示了超卖问题来讲解多线程并发的安全问题
布布要成为最负责的男人
·
2024-02-09 06:35
多线程&JUC
安全
java
面试
javase
JUC
JUC
:4_1并发协作模型:生产者消费者模型
JUC
:4_1并发协作模型:生产者消费者模型线程通信问题synchronized版本的管程法Lock版本的管程法线程通信问题线程之间的通信问题,就是生产者和消费者问题,也就是如何做到多个线程交替执行。
郝开
·
2024-02-09 06:35
java
后端
多线程
多线程&
JUC
:多线程的实现和常用成员方法(守护、礼让、插入线程)
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:首期文章订阅专栏:多线程&
JUC
希望文章对你们有所帮助
JUC
的学习也是需要一些计算机、操作系统的知识的,也算是比较重要的吧,其实自己也是接触了不少的
布布要成为最负责的男人
·
2024-02-09 06:34
多线程&JUC
java
javase
jvm
面试
JUC
JUC
编程02:生产者与消费者问题
一、Synchronized解决方案代码演示packagecom.haust.pc;/***线程之间的通信问题:生产者和消费者问题!等待唤醒,通知唤醒*线程交替执行AB操作同一个变量num=0*Anum+1*Bnum-1*/publicclassA{publicstaticvoidmain(String[]args){Datadata=newData();newThread(()->{for(in
微笑AJJD
·
2024-02-09 06:04
JUC编程
生产者与消费者问题
并发问题
锁
多线程
【
JUC
编程进阶】消费者生产者问题 防止虚假唤醒
synchronized版:packageday3;/***@authorjitwxs*@date2021年05月11日20:31*//**线程之间通信问题:生产者消费者问题等待唤醒,通知唤醒*线程交替执行AB操作同一个变量num=0*Anum+1*Bnum-1*/publicclassA{publicstaticvoidmain(String[]args){Datadata=newData();
Mr_树先森
·
2024-02-09 06:04
JUC编程
多线程
并发编程
多线程&
JUC
文章目录进程与线程多线程的两个概念多线程的实现方式1.继承Thread类的方式进行实现2.实现Runnable接口的方式进行实现3.利用Callable接口和Future接口方式实现Thread常见的成员方法线程的生命周期线程安全的问题同步代码块同步方法Lock锁死锁生产者和消费者(等待唤醒机制)生产者消费者常见方法生产者消费者模式代码实现等待唤醒机制(阻塞队列方式实现)线程的状态进程与线程进程:
DYG.Satan
·
2024-02-09 06:03
java
JUC
- 多线程之Synchronized和Lock锁;生产者消费者模式(一)
阅读前可参考Java--多线程之并发,并行,进程,线程(一)_MinggeQingchun的博客-CSDN博客Java--多线程之终止/中断线程(二)_MinggeQingchun的博客-CSDN博客_java中断线程Java--多线程之join,yield,sleep;线程优先级;定时器;守护线程(三)_MinggeQingchun的博客-CSDN博客Java--多线程之synchronized
MinggeQingchun
·
2024-02-09 06:33
JavaSE
Java多线程;JUC
JUC
多线程
【
JUC
】生产者消费者问题(包含虚假唤醒问题)
参考文章【操作系统】生产者消费者问题_liushall-CSDN博客_生产者消费者问题操作系统概念生产者消费者问题(英语:Producer-consumerproblem),也称有限缓冲问题(英语:Bounded-bufferproblem),是一个多线程同步问题的经典案例。可以理解为肯德基买炸鸡,生产者就相当于肯德基的后厨,生产炸鸡并放到前台消费者就相当于顾客,从前台获得炸鸡有限的缓冲区就相当于
Elephant_King
·
2024-02-09 06:02
多线程JUC
java
rabbitmq
rpc
juc
多线程&
JUC
:等待唤醒机制(生产者消费者模式)
作者简介:一位大四、研0学生,正在努力准备大四暑假的实习上期文章:多线程&
JUC
:解决线程安全问题——synchronized同步代码块、Lock锁订阅专栏:多线程&
JUC
希望文章对你们有所帮助等待唤醒机制
布布要成为最负责的男人
·
2024-02-09 06:01
多线程&JUC
java
开发语言
JUC
javase
面试
读懂 FastChat 大模型部署源码所需的异步编程基础
事件循环4.await5.组合协程6.使用Semaphore限制并发数7.运行阻塞任务8.异步迭代器asyncfor9.异步上下文管理器asyncwith10.参考本文是读懂FastChat大模型部署
源码系列
的第二篇
javastart
·
2024-02-08 09:08
python
python
fastapi
gunicorn
Netty
源码系列
之 EventLoop & run()方法 源码
EventLoop[实现类为NioEventLoop,我们研究NioEventLoop即可]EventLoop是一个单线程的线程池核心作用:处理执行IO操作(accept,read,write事件),普通任务,定时任务EventLoop封装了Selector复用器,Thread线程,以及任务队列为什么EventLoop需要一个任务队列?因为EventLoop是一个单线程的线程池,如果有多个任务请求
etcEriksen
·
2024-02-08 07:18
Netty源码
java
netty
AbstractQueuedSynchronizer(AQS)中独占模式与共享模式的设计与实现
1.AQS概览AbstractQueuedSynchronizer简称AQS,是
JUC
中实现并发的基础,ReentrantLock、CountDownLatch、Semaphore、ReentrantReadWriteLock
prozombie
·
2024-02-08 04:26
七、Nacos
源码系列
:Nacos服务发现
目录一、服务发现二、getServices():获取服务列表2.1、获取服务列表2.2、总结图三、getInstances(serviceId):获取服务实例列表3.1、从缓存中获取服务信息3.2、缓存为空,执行订阅服务3.2.1、调度更新,往线程池中提交一个UpdateTask任务3.2.2、订阅服务3.2.3、处理服务信息3.3、非订阅模式,通过grpc发送ServiceQueryReques
每天都要进步一点点
·
2024-02-08 01:36
#
Nacos源码
Nacos源码
Nacos服务发现
Nacos注册中心
Nacos
服务发现
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
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
其他