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
并发编程 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
开发语言
设计模式:循序渐进走入工厂模式
文章目录前言一、引入二、简单工厂模式1.实现2.优缺点3.扩展三、工厂方法模式1.实现2.优缺点四、抽象工厂模式1.实现2.优缺点3.使用场景五、模式扩展六、JDK
源码解析
总结前言软件设计模式之工厂模式
浩泽学编程
·
2023-12-22 23:31
软件设计模式
设计模式
java
开发语言
后端
简单工厂模式
工厂方法模式
抽象工厂模式
STL
源码解析
(3)-traits特性
STL
源码解析
(3)-traits特性算法和迭代器在STL中绝大多数容器均提供了迭代器,迭代器提供了访问/遍历容器中元素的手段同时提供了如:sort、copy、find等针对于迭代器的函数,对于不同迭代器提供了相同的接口迭代器的问题
突击手平头哥
·
2023-12-22 22:56
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
数据库
Spring Boot v2.4.4
源码解析
(一)字符串占位符解析器 PropertyPlaceholderHelper
Spring属性占位符解析器PropertyPlaceholderHelper源码阅读PropertyPlaceholderHelper用于处理字符串中"${}"这种占位符,比如通过@Value(“${}”)注解获取对应属性文件中定义的属性值等(但不能处理@Value(“#{}”),表示通过SpEL表达式通常用来获取bean的属性)。该类是一个单纯的工具类,没有继承没有实现,而且简单无依赖,没有依
u一枚蒟蒻
·
2023-12-22 20:56
Spring
源码阅读
spring
java
源码
Hotspot
源码解析
-第一章
第一章源码下载本次
源码解析
是以jdk1.8为基础的jvm源码,这里要简单介绍一下OpenJDK与Hotspot的关系:OpenJDK是JDK的开放原始码版本,而HotSpot只是OpenJDK中使用的虚拟机模块
zhang527294844
·
2023-12-22 16:16
java
Hotspot
源码解析
-开篇
开篇接下来的一段时间,我将开始读取Hotspot源码,并输出
源码解析
文档。写这些文档的意义,一是为了加深自己的技术基础,二是为了分享技术,同时也为了大家一起探讨技术。
zhang527294844
·
2023-12-22 16:10
Java虚拟机
java
【
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
vue3
源码解析
(v3.3.8)
从最基本的目录结构开始,逐渐深入,主要是为留痕,以便以后查阅0版本版本:3.3.81目录结构├─changelogs//更新日志├─packages//源码和测试代码│├─compiler-core//跨平台的框架│├─compiler-dom//浏览器端编译器│├─compiler-sfc//.vue文件解析器│├─compiler-ssr//服务端解析器│├─dts-test//│├─reac
无心使然云中漫步
·
2023-12-22 10:12
vue
vue.js
javascript
前端
Vue
源码解析
的理解总结
1.对数据代理的理解在vue中是有数据代理的,Vue的实例对象代理了data对象,Vue的实例对象是代理者,data对象是被代理者。数据代理实际上是把Vue中的data对象中的所有的属性通过Object.key()方法进行遍历,然后再通过Object.defineProperty()方法把data对象中的每个属性添加Vue的实例对象上,然后重写每个属性的get方法和set方法实例化Vue的时候,后
鲁女女
·
2023-12-22 10:49
最详细的 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
Spark的stage
源码解析
https://zhuanlan.zhihu.com/p/535000671?utm_id=0stage创建划分的过程就是一个深度优先遍历rdd依赖树的过程,通过不断的循环递归形式,最早的stage被首先创建出来。然后顺序创建后续stage,stage创建完毕后会注册stage到shuffleToMapStage,这是一个map,key为shuffleId,value为stage。每一个stage
Logan_addoil
·
2023-12-22 05:19
大数据学习之旅
spark
大数据
分布式
Qt
源码解析
2---外部程序嵌入到Qt进程界面
Qt
源码解析
索引Qt程序开发时经常需要启动外部程序,这个通常使用QProcess挺好解决的。还有一种情况时需要启动外部程序,并嵌入到我们开发的Qt程序中,这样系统看起来更像一个整体。
道格拉斯范朋克
·
2023-12-22 04:16
Qt
qt
WindowContainer
嵌入外部程序
win嵌入外部程序
Qt
源码解析
3-信号和槽机制-QMetaType(qRegisterMetaType、Q_DECLARE_METATYPE、qMetaTypeId)
Qt
源码解析
索引目录Qt
源码解析
索引类QMetaType辅助类QtMetaTypePrivate成员函数qMetaTypeId成员函数type成员函数create成员函数destroy相关宏Q_DECLARE_METATYPE
道格拉斯范朋克
·
2023-12-22 04:16
Qt
c++
开发语言
qt
Qt
源码解析
3-信号和槽机制-QMetaType 知道你的类型
Qt
源码解析
索引目录Qt
源码解析
索引Qt
源码解析
3-信号和槽机制-QMetaType知道你的类型1为什么Qt需要运行时动态类型信息?2QMetaType保留了哪些信息?3它是如何工作的?
道格拉斯范朋克
·
2023-12-22 04:46
Qt
qt
开发语言
c++
QMetatype
Qt
源码解析
-QCefView编译
Qt
源码解析
索引环境配置1.CMake:最低要求版本为3.19.1,推荐使用最新版本2.QtQCefView是基于Qt框架的,同时支持Qt5.x和6.x版本。
道格拉斯范朋克
·
2023-12-22 04:45
Qt
QCefView
windows编译
cef_initialize
CEF
Chromium
Qt
源码解析
1---D指针原理
D指针什么是d指针如果你已经看过到Qt源文件像QLablel,QPictureQLabel::picture()const{ Q_D(constQLabel); if(d->picture) return*(d->picture); returnQPicture();}你会发现总体不时含有Q_D和Q_Q宏。本文揭示了这些宏的用途。该Q_D和Q_Q宏是一个设计模式的一部分被称为d-指针(
道格拉斯范朋克
·
2023-12-22 04:15
Qt
qt
c++
Q_D
Q_Q
D指针
源码解析
8-QSS原理-案例-Qt的qss特殊设置多个子控件的颜色与伪状态
Qt
源码解析
索引
源码解析
8-QSS原理-案例-Qt的qss特殊设置多个子控件的颜色与伪状态有些时候我们想特殊设置QSS,比如某一类标题栏目,某一个窗口中的颜色。
道格拉斯范朋克
·
2023-12-22 04:44
Qt
qt
qss
ID选择器
多个子类特殊配置
【
源码解析
】聊聊ReentrantReadWriteLock是如何实现的读写锁
为什么需要读写锁在并发编程领域,有多线程进行提升整体性能,但是却引入了共享数据安全性问题。基本就是无锁编程下的单线程操作,有互斥同步锁操作,但是性能不高,并且同一时刻只有一个线程可以操作资源类。但是对于大多数常见下,都是读操作多,写操作少,那么可以利用将锁的粒度进行细化,进而分化出读锁/写锁。也就是syn/ReentrantLock的升级版本ReentrantReadWriteLock。之前一篇文
qxlxi
·
2023-12-22 03:17
#
并发编程
#
源码解析
java
软件设计模式:单例模式
文章目录前言一、单例模式实现1.饿汉式静态变量方式静态代码块方式2.懒汉式线程不安全线程安全双重检查锁静态内部类方式枚举方式二、存在问题1.序列化反序列化2.反射破坏3.解决序列化破坏解决反射破坏解决三、JDK
源码解析
总结前言单例模式
浩泽学编程
·
2023-12-22 02:05
软件设计模式
设计模式
单例模式
spring
java
源码
J.U.C(二)AQS
AbstractQueuedSynchronizer-AQS是
juc
的核心,提供了一个先进先出队列,提供了锁个其他同步装置的基础框架privatevolatileintstate;表示状态使用方法是继承
胖达_4b7e
·
2023-12-22 00:29
ChatGLM-6B
源码解析
之 web_demo.py
fromtransformersimportAutoModel,AutoTokenizerimportgradioasgrimportmdtex2htmltokenizer=AutoTokenizer.from_pretrained("THUDM/chatglm-6b",trust_remote_code=True)model=AutoModel.from_pretrained("THUDM/ch
量化交易曾小健(金融号)
·
2023-12-21 20:15
大语言模型ChatGPT
-
LLM
python
人工智能
开发语言
Vue
源码解析
-简单实现文本插值并且简单封装(三)
Vue中最基本的数据绑定形式是文本插值,它使用的是“Mustache”语法(即双大括号){{}}的形式来进行数据的绑定,我们这里来进行一个简单的复刻,并且用字符串路径来访问对象成员,完成一个简单的封装。{{name}}{{message}}{{name}}{{message}}{{frit.fritOne}}{{frit.fritTwo}}letrkuohao=/\{\{(.+?)\}\}/g;/
吾乃猪儿虫
·
2023-12-21 19:14
vue.js
前端
javascript
DPDK之eventdev_pipeline
源码解析
DPDK之eventdev_pipeline
源码解析
引言1实现原理1.1数据接收1.2数据发送1.3事件调度1.4structrte_event2核心API3
源码解析
3.1generic实现3.2txenq
Victor Fung
·
2023-12-21 18:07
分布式存储
网络
【Java 集合】LinkedBlockingQueue
LinkedBlockingQueue,顾名思义:基于链表的阻塞队列,位于
JUC
(java.util.concurrent)下,是一个线程安全的集合,其本身具备了不支持null元素:存入null元素会抛出异常固定不限容量
lcn29
·
2023-12-21 18:59
#
Java
集合
Java
Java
集合
【Spark-ML
源码解析
】Word2Vec
前言在阅读源码之前,需要了解Spark机器学习Pipline的概念。相关阅读:SparkMLlib之Pipeline介绍及其应用这里比较核心的两个概念是:Transformer和Estimator。Transformer包括特征转换和学习后的模型两种情况,用来将一个DataFrame转换成另一个DataFrame;Estimator接收一个DataFrame并输出一个模型(Transformer)
LotusQ
·
2023-12-21 17:18
spark-ml
word2vec
人工智能
【MMEngine】RUNNER.ITERBASEDTRAINLOOP与RUNNER.EPOCHBASEDTRAINLOOP
源码解析
——如何设置按照迭代次数和轮数进行网络训练
目录动机MMEngine.runner设置config参数举例MMEngine.runner源码IterBasedTrainLoop说明输入输出IterBasedTrainLoop源码EpochBasedTrainLoop说明输入输出EpochBasedTrainLoop源码总结基于迭代次数训练❤️config❤️参数说明基于轮数训练❤️config❤️参数说明✌️✌️启发整理不易,欢迎一键三连!
zy_destiny
·
2023-12-21 12:46
实例分割
mmSegmentation
MMEngine
人工智能
深度学习
机器学习
开发语言
python
mmengine
计算机视觉
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
编写一个程序开启三个线程分别为ABC,每个线程将自己的Id在屏幕上打印十次,要求输出结果必须按照顺序ABCABCABC....
package
JUC
;importjava.util.concurrent.locks.Condition;importjava.util.concurrent.locks.Lock;importjava.util.concurrent.locks.ReentrantLock
程序猿MM
·
2023-12-21 10:56
JUC
、MySQL
java后端面试题大全1.
JUC
1.1ReentrantLock(可重入独占式锁)(难度:★★★频率:★★)1.2ReentrantLock比synchronized的优点(难度:★★★频率:★★)1.3CAS
sp_wxf
·
2023-12-21 08:26
python
java
面试
element ui el-avatar
源码解析
零基础逐行解析
avatar功能介绍快捷配置头像的样式avatar的参数配置属性说明参数size尺寸typestring类型(‘large’,‘medium’,‘small’)number类型validator校验shape形状circle(原型)square(方形)icon传入的iconsrc传入的图片string类型可以是本地图片(本地图片需要在js中requir导入,不可直接使用相对路劲引用)也可以是网络地
丰的传说
·
2023-12-21 08:20
ui
elementui
源码
element
ui
HashMap原理以及ConcurrentHashMap
一、HashMap的关键参数及部分
源码解析
1.1HashMap的几个关键参数HashMap的源码中存下以下几个常量//默认容量,默认为16staticfinalintDEFAULT_INITIAL_CAPACITY
有只怪好强
·
2023-12-21 04:55
Android:ThreadLocal
源码解析
1、前言最初看到ThreadLocal这个东西是在Handler消息机制的Looper实例化的时候,系统把Looper的实例对象保存在ThreadLocal里,当有需要的时候就直接拿出来用,以此保证一个线程只有一个Looper对象;这篇文章就是对ThreadLocal源码进行解析,记录其工作过程与原理;2、定义先来看看系统源码对其的一个简单描述:/***Implementsathread-loca
绿茵场上的码者
·
2023-12-20 16:05
2024 年最佳 Mock 工具 Top 5
ApifoxApifox以其强大的模拟功能而著称,兼容Mock.js语法,并支持Nun
juc
ks和自定义脚本,以适应各种场景。它的
LiamHong_
·
2023-12-20 15:24
前端
前端框架
学习方法
javascript
json
【设计模式】 - 结构型模式 - 迭代器模式
目录标题前言迭代器模式概述结构实现优缺点JDK
源码解析
前言行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配
桃月十二_
·
2023-12-20 11:43
设计模式
设计模式
迭代器模式
Java并发编程学习笔记
JUC
并发编程第一章、进程与线程1、进程与线程进程程序由指令和数据组成,但这些指令要运行,数据要读写,就必须将指令加载到CPU,数据加载到内存。在指令运行过程中还需要用到磁盘、网络等设备。
以我牛马为核
·
2023-12-20 03:06
学习笔记
java
爬虫入门--爬取电影TOP250-附
源码解析
爬取电影TOP2501知识小课堂1.1什么是爬虫1.2爬虫能做什么2代码解析2.1运行环境2.2过程解析2.2.1第一步:引入两个模块2.2.2找到网址2.2.3拉去页面全内容2.2.42.3完整代码1知识小课堂1.1什么是爬虫爬虫,也叫网络蜘蛛,如果把互联网比喻成一个蜘蛛网,那么蜘蛛就是在网上爬来爬去的蜘蛛。网络爬虫按照系统结构和实现细节,大体可以分为以下几种:通用网络爬虫:这是一种基本的爬虫程
梦幻蔚蓝
·
2023-12-20 01:42
python
爬虫
Leaflet
源码解析
Map.jsimport*asUtilfrom'../core/Util';import{Evented}from'../core/Events';import{EPSG3857}from'../geo/crs/CRS.EPSG3857';import{Point,toPoint}from'../geometry/Point';import{Bounds,toBounds}from'../geom
nmj2008
·
2023-12-19 22:36
Leaflet
关于图像像素opencv行与列关系
使用C++opencv读取一张图片如下操作:cv::Matm4=cv::imread("/home/
juc
hunyu/20231013/globalPlanner/PM.pgm",cv::IMREAD_GRAYSCALE
Jack Ju
·
2023-12-19 21:59
笔记
自动驾驶算法
opencv
人工智能
计算机视觉
SpringBoot整合Transaction——
源码解析
前言@Transactional的底层实现是通过aop代理来完成的,当调用被@Transactional声明的方法时,实际上调用的是aop的一个代理类,事务失败会自动捕获异常进行rollback。下面就一起通过源码来了解一下吧。在哪里实现代理TransactionAttributeSourcePointcut.javapublicbooleanmatches(Methodmethod,Classt
hey极道神隽
·
2023-12-19 20:02
从一道题目学习Nun
juc
ks模板
Nun
juc
ks简介:Nun
juc
ks是一个功能丰富、强大的JavaScript专用模板引擎。Nun
juc
ks提供丰富的语言特性和块继承、自动转移、宏和异步控制等等。
GG bond-
·
2023-12-19 20:24
学习
vue.js
前端
数据库
缓存
网络安全
网络
SAP UI5 初学者教程之四:XML 视图初探试读版
Jerry从2014年加入SAP成都研究院CRMFiori开发团队之后开始接触SAPUI5,曾经在SAP社区和“汪子熙”微信公众号上发表过多篇关于SAPUI5工作原理和
源码解析
的文章。
JerryWang_汪子熙
·
2023-12-19 20:35
Unity SRP 管线【第四讲:URP 阴影】
URP全文
源码解析
参照引入在UniversalRenderer.cs/line505行处此处已经准备好了所有渲染数据(所有数据全部存储在了renderingData中)我们只用renderingData
Elsa的迷弟
·
2023-12-19 17:35
Unity
unity
游戏引擎
URP
Unity主光源阴影渲染
ElasticJob
源码解析
之主节点选举分片实现
在elasticJob中,最重要的一个功能就是作业分片,作业分片是怎样实现的,由谁来负责分片?哈哈,肯定不是我来负责分片的,肯定是集群中的某台机器啦,一个集群由很多台机器,那到底是哪台机器来负责?万一这台机器挂掉了,那怎么办?原来在elasticJob中,每次有新机器上线,都会去触发分片,但并不是所有机器都去做分片,而是有一台主节点机器去负责分片,这个主节点是选举出来的。publicvoidsha
一滴水的坚持
·
2023-12-19 17:35
上一页
15
16
17
18
19
20
21
22
下一页
按字母分类:
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
其他