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
C++STL空间配置器源码分析
RocketMQ源码 发送顺序消息
源码分析
源码版本:4.9.3源码架构图
源码分析
发送普通消息源码在另外一篇文章https://blog.csdn.net/hzwangmr/article/de
虚空小白
·
2024-01-09 12:38
RocketMQ源码
rocketmq
java-rocketmq
java
源码
消息中间件
RocketMQ源码 发送 延迟消息
源码分析
前言rocketMQ支持的延迟消息,简单理解就是对于生产者发送的消息,支持设置固定时间的延迟级别,在到达指定的延迟时间时,才会投递到消费者队列,消费者才能消费到消息。延迟队列和普通消息的发送流程,主要流程都是一致的,区别在于:可以参考源码架构图来看,在DledgerCommitLog组件写入消息之前,会针对设置了setDelayTimeLevel延迟级别的消息,改写topic为RMQ_SYS_SC
虚空小白
·
2024-01-09 11:33
RocketMQ源码
rocketmq
java-rocketmq
RocketMQ
源码
源码
java
中间件
消息队列
Ceph
源码分析
-在C++中,符号“&“和“*“有不同的用法。
在C++中,符号"&"和"*"有不同的用法。"&"符号:在变量声明时,"&"用于定义引用类型。例如:inta=10;int&ref=a;这里的"ref"是一个引用,它引用了变量"a",对"ref"的修改会影响到"a"的值。在函数参数中,"&"用于传递参数的引用。例如:voidfoo(int&num){...}这里的"num"是一个引用类型的参数,函数内部对"num"的修改会影响到传递进来的变量。"
瓦哥架构实战
·
2024-01-09 08:46
Ceph
ceph
Thrift
源码分析
(TThreadPoolServer)
Thrift提供的网络服务模型:单线程、多线程、事件驱动,从另一个角度划分为:阻塞服务模型、非阻塞服务模型。阻塞服务模型:TSimpleServer、TThreadPoolServer。非阻塞服务模型:TNonblockingServer、THsHaServer和TThreadedSelectorServer。TThreadPoolServer类图TThreadPoolServer模式采用阻塞so
番薯和米饭
·
2024-01-09 06:34
Flutter引擎
源码分析
(二) - channel原生通信
Flutter引擎
源码分析
(一)-编译调试一、Xcode编译干了什么image.pngcdflutter存放路径/flutter/packages/flutter_tools/bin&&vimxcode_backend.shimage.pngvimxcode_backend.dartimage.pngimage.png
erlich
·
2024-01-09 04:11
Android
源码分析
—带你认识不一样的 AsyncTask
前言什么是AsyncTask,相信搞过android开发的朋友们都不陌生。AsyncTask内部封装了Thread和Handler,可以让我们在后台进行计算并且把计算的结果及时更新到UI上,而这些正是Thread+Handler所做的事情,没错,AsyncTask的作用就是简化Thread+Handler,让我们能够通过更少的代码来完成一样的功能,这里,我要说明的是:AsyncTask只是简化Th
度憨憨
·
2024-01-09 03:56
开发利器——C语言必备实用第三方库
对于广大C语言开发者来说,缺乏类似
C++STL
和Boost的库会让开发受制于基础库的匮乏,也因此导致了开发效率的骤降。这也使得例如libevent这类事件库(基础组件库)一时间大红大紫。
码哥比特
·
2024-01-09 02:18
c语言
开发语言
经验分享
学习
程序人生
linux
单片机
iOS promise 设计模式,google promises
源码分析
1.promise模式概念关于文字概念,网上一堆,这里摘取下别人的话Promise设计模式的原理Promise设计模式把每一个异步操作都封装成一个Promise对象,这个Promise对象就是这个异步操作执行完毕的结果,但是这个结果是可变的,就像薛定谔的猫,只有执行了才知道。通过这种方式,就能提前获取到结果,并处理下一步骤。Promise使用then作为关键字,回调最终结果。then是整个Prom
孙掌门
·
2024-01-09 00:35
EventBus
源码分析
及仿EventBus实现
EventBus
源码分析
我分析源码一般是从整体来进行分析,对于一些细节的东西,我没有时间也没有能力去分析。
MEzzsy
·
2024-01-08 19:00
GPT(Generative Pre-Training)论文解读及源码实现(二)
本篇为gpt2的pytorch实现,参考nanoGPTnanoGPT如何使用见后面第5节1数据准备及预处理data/shakespeare/prepare.py文件
源码分析
1.1数据划分下载数据后90%
晚点吧
·
2024-01-08 16:04
NLP
gpt
预训练模型微调
大模型
gpt2
C++STL
中String简单模拟实现
前言大家好,今天这篇文章介绍的主要是
C++STL
中String的简单模拟实现构建架构这里我们可以从cplusplus.com-TheC++ResourcesNetwork中找到String,基于给出的函数来构建框架
Hsifles
·
2024-01-08 15:13
C++
c++
开发语言
lighttpd-1.4.20
源码分析
lighttpd-1.4.20
源码分析
以后的更新都在这个地址http://bbs3.chinaunix.net/thread-1369986-1-1.html网络编程讨论QQ群号:454389690写在前面对于轻量级
lenky0401
·
2024-01-08 14:44
Lighttpd源码分析
lighttpd
工作
graphviz
服务器
plugins
makefile
手动配置Spring AOP的
源码分析
这里写自定义目录标题ProxyFactoryBean模式目标对象拦截器链的初始化获取拦截目标对象ProxyFactoryBean模式在Spring中实现aop功能有两种方式,一种是手动配置的方式,另一种是自动配置。手动配置的实现主要有以下几个类完成:使用ProxyFactoryBean时,需要设置targetName(代理对象),以及作用在代理对象上的拦截器interceptorNames属性,如
用心一
·
2024-01-08 11:19
spring
java
后端
Mybatis【2.2】-- Mybatis关于创建SqlSession
源码分析
的几点疑问?
代码直接放在Github仓库【https://github.com/Damaer/Mybatis-Learning】,可直接运行,就不占篇幅了。[TOC]1.为什么我们使用SQLSessionFactoryBuilder的时候不需要自己关闭流?我们看我们的代码:publicclassStudentDaoImplimplementsIStudentDao{privateSqlSessionsqlSe
秦怀杂货店
·
2024-01-08 10:56
[源码]mybatis一级缓存
源码分析
一.为什么要有一级缓存 每当我们使用Mybatis开启一次和数据库的会话,就会创建一个SqlSession对象来表示这个会话。就在这一次会话中,我们有可能反复执行完全相同的查询语句,这些相同的查询语句在没有执行过更新的情况下返回的结果也是一致的。相信机智的你已经想到,如果每次都去和数据库进行交互查询的话,就会造成资源浪费。所以,mybatis加入了一级缓存,用来在一次会话中缓存查询结果。 总结
程序媛swag
·
2024-01-08 09:49
mybatis核心层
源码分析
2-binding模块
1.一个核心问题为什么使用mapper接口就能操作数据库?(mapper接口并没有实现类)Ans:配置文件解读+动态代理的增强动态代理增强就是binding模块的功能。从表现来讲,bingding的主要功能是将面向mapper接口编程转换成session中对应的方法执行。2.binding模块分析MapperRegistry:mapper接口和对应的代理对象工厂的注册中心;MapperProxyF
王侦
·
2024-01-08 09:53
ZGC
源码分析
(5)-ZGC并发并行度设计
ZGC的目标是希望更短的听段停顿时间,同时希望对应用程序的影响尽量小。所以一定会控制GC并行线程数和并发线程数。并行线程指的是暂停应用执行初始标记,最终标记和初始转移时候的工作线程数。并发线程数是指执行并发标记和并发转移等工作的线程数。并行和并发的线程数目可以通过参数ParallelGCThreads和ConcGCThreads控制。如果没有设置,ZGC会启发式的推断合理的参数。因为ZGC希望暂停
躺在石头上吐泡泡
·
2024-01-08 07:34
《Ceph
源码分析
》——第1章,第5节RADOS
本节书摘来自华章出版社《Ceph
源码分析
》一书中的第1章,第1.5节RADOS,作者常涛,更多章节内容可以访问云栖社区“华章计算机”公众号查看1.5RADOSRADOS是Ceph存储系统的基石,是一个可扩展的
weixin_34413103
·
2024-01-08 04:54
swift
什么是长轮询
短轮询vs长轮询短轮询长轮询长轮询的原理demotomcat线程池AsyncContext
源码分析
短轮询vs长轮询在看apollo和nacos等配置中心的源码的时候发现,配置更新的实时感知都是采用的长轮询的方式
法拉弟弟
·
2024-01-08 02:24
网络
java
服务器
trino-435:dynamic catalog数据库存储代码实现
一、dynamiccatalog数据库存储
源码分析
dynamiccatalog的实现主要涉及到两个类:CoordinatorDynamicCatalogManager、WorkerDynamicCatalogManager
玉成226
·
2024-01-08 02:45
【trino】
大数据
Spring Authorization Server OAuth2TokenEndpointFilter
源码分析
OAuth2TokenEndpointFilterOAuth2TokenEndpointFilter是负责颁发token的过滤器。AuthenticationConverter负责将提交的参数转换为Authentication.该属性的实例为DelegatingAuthenticationConverter,是一个委派转换器,委派给下面的Convert执行下面三个convert0={OAuth2A
丑过三八线
·
2024-01-08 00:47
spring
MySQL一条查询SQL的执行过程(
源码分析
)
MySQL一条查询SQL的执行过程(
源码分析
)最基本的一条查询语句:服务端处理流程说明:以下所有说明都以MySQL5.7.25源码为例,存储引擎为InnoDB。
抡着鼠标扛大旗
·
2024-01-07 18:50
MySQL
MySQL
源码解析
SQL查询
MySQL数据库中使用use来切换数据库之底层原理
【MySQL源码】usedatabase切换表空间切换表空间
源码分析
客户端流程服务端流程说明:以下所有说明都以MySQL5.7.25源码为例,存储引擎为InnoDB。
抡着鼠标扛大旗
·
2024-01-07 18:20
MySQL
MySQL
源码解析
use
tables
java容器
源码分析
--HashSet(JDK1.8)
本篇结构:前言数据结构重要参数常用方法
源码分析
疑问解答分析总结一、前言HashSet也是常用的数据结构,是一个没有重复元素的集合,也不能保证元素的顺序,可以有null值,但最多只能有一个。
w1992wishes
·
2024-01-07 18:27
Tor 1
笔者从今年3月份开始陆陆续续研究Tor系统的源码,由于源码量大,也有很多需要总结的地方,所以特地在这里开辟个Tor
源码分析
的系列文章,供自己总结,也供大家共同探讨。
ivana_1991
·
2024-01-07 17:10
Android 11中Activity启动过程
源码分析
Android中ActivityManagerService简称AMS,主要负责Android中四大组件创建启动管理。本地环境如下:compileSdkVersion30buildToolsVersion"30.0.3"minSdkVersion21targetSdkVersion301)从调用startActivity开始startActivity(Intent(this,MainActivit
Time@traveler
·
2024-01-07 14:51
Android源码分析
ActivityThread
Android
11
AMS
ATMS
Activity启动流程
被标记为事务的方法互相调用的坑(上)
微服务、Spring,MyBatis,Netty
源码分析
的朋友可以加我的Java高
程序员日常填坑
·
2024-01-07 10:54
mybatis-mapper的动态代理原理
mapper的xml文件和对应的接口注意:mapper的xml文件要与接口名一样,namespace也需要设置为接口的全路径名,只有这样才能在为mapper接口做动态代理的时候找到正确的sql语句二、
源码分析
涉及到的模块
想到的名字都被人用了
·
2024-01-07 07:11
mybatis
java
mybatis
mapper动态代理
mybatis动态代理
iOS底层探索之Block(五)——Block
源码分析
(__block 底层都做了什么?)
回顾在上一篇博客中,通过对block追根溯源,汇编跟踪调式,
源码分析
,对底层结构和block的属性方法都有一定的认识,那么本篇博客将继续对block的底层进行分析。
俊而不逊
·
2024-01-07 07:07
RocketMQ
源码分析
----Producer队列选择与容错策略
队列选择在HA的文章里大概讲了一下Producer如何为高可用贡献出一份力量的,当时只是说了遍历列表选择队列,然后选择一个,没有深入分析,这篇文章深入分析一下其源码,首先从发送消息选择队列的代码开始:StringlastBrokerName=null==mq?null:mq.getBrokerName();MessageQueuetmpmq=this.selectOneMessageQueue(l
_六道木
·
2024-01-07 04:44
Spring
源码分析
零:Springboot的启动流程
文章目录一、前言二、SpringApplication的初始化三、流程简介四、流程步骤详解1.获取监听器2.环境变量的构造2.1.application.yml的加载3.创建上下文4.上下文准备工作5.SpringApplication#refreshContext附录:spring.factories一、前言本文是笔者阅读Spring源码的记录文章,由于本人技术水平有限,在文章中难免出现错误,如
猫吻鱼
·
2024-01-07 04:14
#
源码分析篇
Java HashMap 面试题(一)
面试题-HashMap的put方法的具体流程hashMap常见属性
源码分析
3.3面试题-说一下HashMap的实现原理?
xwhking
·
2024-01-07 03:11
Java面试题之集合
java
开发语言
Android架构组件Room功能详解,已拿offer附真题解析
可能有人会觉得,我技术牛逼就行了,为啥还要提高写文档的能力,有这功夫我还不如多看看
源码分析
?这是一些初级或者刚入门的工程师的普遍的困惑。这
m0_56067448
·
2024-01-06 19:36
程序员
android
spring之循环依赖底层
源码分析
目录前言:@Resouce/@AutoWired区别@Resouce注入过程spring循环依赖底层原理源码解析解决循环依赖问题所需要的重要关键对象循环依赖不同场景解决方式前言:今天聊一聊spring循环依赖问题,同时分析一下@Resouce/@AutoWired区别。@Resouce/@AutoWired区别@Autowired注解是Spring提供的,而@Resource注解是J2EE本身提供
山鸟与鱼!
·
2024-01-06 18:09
spring源码
spring
java
后端
Hive 源码解析一:Driver
本文为Hive源码系列的第一节(共三节)客户端部分,本节主要内容是通过
源码分析
总结从bin/hive启动到SQL解析转换成MR再到提交任务打印结果的一个宏观流程;第二节则针对HSQL如何解析、转换成MR
小王是个弟弟
·
2024-01-06 17:25
hive
hadoop
big
data
【Linux 内核
源码分析
】I2C子系统分析 整体框架介绍
内核版本:v4.14构成在Linux的I2C架构如图:内核空间部分可以分为:i2c设备驱动、i2c核心以及i2c总线驱动。i2c核心:框架的实现;提供i2c总线驱动和设备驱动的注册、注销方法;i2c通信方法(algorithm)上层的,与具体适配器无关的代码以及探测设备、检测设备地址的上层代码等。这一部分的工作由内核开发者完成。i2c总线驱动:具体控制器的实现;i2c总线驱动是对i2c硬件体系结构
攻城狮百里
·
2024-01-06 16:26
Linux
linux
【Linux 内核
源码分析
】GPIO子系统软件框架
Linux内核的GPIO子系统是用于管理和控制通用输入输出(GPIO)引脚的软件框架。它提供了一套统一的接口和机制,使开发者能够方便地对GPIO进行配置、读写和中断处理。主要组件:GPIO框架:提供了一套API和数据结构,用于在驱动程序中注册和操作GPIO引脚。这包括GPIO的请求、释放、配置以及读写等功能。GPIO控制器驱动:每个具体的硬件平台都需要编写相应的GPIO控制器驱动程序,负责与硬件进
攻城狮百里
·
2024-01-06 16:26
Linux
linux
【Linux 内核
源码分析
】Linux内核通知链机制
Linux内核通知链(notifierchain)是一种机制,用于实现内核中的事件通知和处理。它提供了一种灵活的方式,让不同的模块可以注册自己感兴趣的事件,并在事件发生时接收到通知。通知链由一个或多个注册在其中的回调函数组成,每个回调函数都有一个优先级。当事件发生时,内核会按照优先级顺序调用相应的回调函数进行处理。在内核中,常见的使用场景包括:设备驱动程序:当设备状态改变时,通过通知链机制将相关信
攻城狮百里
·
2024-01-06 16:56
Linux
linux
【Linux 内核
源码分析
】关于Linux内核源码目录结构
Linux内核源码采用树形结构。功能相关的文件放到不同的子目录下面,使程序更具有可读行。使用SourceInsight打开源码,如下图所示,可以看到源码是树形结构。目录含义描述arch存放与体系结构相关的代码,包括不同硬件平台的特定代码。block提供块设备的支持,包括文件系统和磁盘驱动程序。crypto提供加密算法和密码学支持。Documentation存放内核文档和说明。drivers包含各种
攻城狮百里
·
2024-01-06 16:20
Linux
linux
seata的部署和集成
官网地址:Seata|Seata,其中的文档、播客中提供了大量的使用说明、
源码分析
。
ZSYP-S
·
2024-01-06 15:48
Seata
C++ STL使用
文章目录
C++STL
使用一、什么是STL二、STL内容介绍2.1STL中六大组件2.2容器2.3迭代器2.4算法2.4.1算法分类2.5仿函数2.5.1仿函数(functor)在编程语言中的应用2.5.2
宁静深远
·
2024-01-06 12:42
C++学习
c++
容器
开发语言
[
C++STL
教程]2.queue队列容器,小白都能看懂的讲解!
在学习数据结构的时候我们会听到这样一个词:队列。本文将介绍STL中的队列:queue本文仅从入门和实用角度介绍queue的用法,主要针对初学者或竞赛向。如有不严谨的地方欢迎指正!本文长度约2000字,阅读大约需5分钟。什么是队列?队列是一种FIFO,即FirstInFirstOut的数据结构,就像是小朋友排队一样,所有元素都只能从队尾(rear/back)进,队头(front)出,队列内的元素保持
Eriktse_
·
2024-01-06 10:05
RocketMQ源码 发送消息
源码分析
前言DefaultMQProducer是默认生产者组件,是生产者客户端中,绝大部分关于生产者和broker、nameSrv进行网络通信的功能入口。其中,包含发送各种形式(同步、异步、事务、顺序)的消息,针对发送消息部分的实现,主要是封装好消息协议后,从NameSrv获取当前Topic路由信息,轮询悬着一个队列,通过RemotingClient客户端,将请求发送给messageQueue所在的bro
虚空小白
·
2024-01-06 08:37
RocketMQ源码
java
开发语言
源码
中间件
java-rocketmq
rocketmq
Retrofit
源码分析
本文概述Retrofit作为主流的网络框架,采用注解和接口的方式封装请求,使得调用过程变得优雅又简洁,优雅的背后肯定是卓越的设计,所以从源码角度分析一下Retrofit是如何做到的,整理成文。使用回顾publicinterfaceGitHubService{@GET("group/{id}/users?sort=desc")Call>groupList(@Path("id")intgroupId)
就叫汉堡吧
·
2024-01-06 07:32
聊一聊 C# 线程切换后上下文都去了哪里
这个问题其实比较底层,如果对操作系统没有个体系层面的理解以及做过
源码分析
,其实很难说明白,这篇我们就从.NET高级调试的角度试着分析一下吧。
一线码农
·
2024-01-06 07:53
c#
开发语言
windbg
.net
spring-AOP注解
源码分析
1.前言在刚学java的时候看到编译器里显示的黄黄的字体还不知道那是注解,注解的名称也是后面才知道的,反正感觉它的逼格很高。后面为了提高自己的代码质量,也学会了注解的编写,不过一直没有去看到底是怎么实现的,这回总算弥补上年轻时代的缺憾了。2.代理实例化的流程image.png2.1ProxyFactory代理工厂代理工厂类继承于ProxyCreatorSupport涉及的源码部分如下,很简单没什么
WANGGGGG
·
2024-01-06 07:15
springCloud-Eureka
源码分析
Eureka架构图Eureka作为springCloud的注册中心,提供了服务注册、服务续约、服务同步等功能,本片文章结合源码来看下Eureka核心功能,原文地址imageEureka核心功能服务注册(register):EurekaClient会通过发送REST请求的方式向EurekaServer注册自己的服务,提供自身的元数据,比如ip地址、端口、运行状况指标的url、主页地址等信息。Eure
ajajaj
·
2024-01-06 06:43
Linux内核
源码分析
之setup_arch (三)
1.前言在Linux内核
源码分析
之setup_arch(二)中介绍了当前启动阶段的内存分配函数memblock_alloc,该内存分配函数在本篇将要介绍paging_init中用于页表和内存的分配,paging_init
JiauZhang
·
2024-01-06 03:20
linux
linux
嵌入式
操作系统
Linux内核
源码分析
之setup_arch (四)
机器感知一个专注于SLAM、Linux、算法等相关技术文章分享的公众号前言Linux内核
源码分析
之setup_arch(三)基本上把setup_arch主要的函数都分析了,由于距离上一篇时间比较久了,所以这里重新贴一下大致的流程图
JiauZhang
·
2024-01-06 03:20
linux
MyBatis
源码分析
(二):项目结构
目录1、前言2、代码统计3、整体架构3.1、基础支持层3.1.1、反射模块3.1.2、类型模块3.1.3、日志模块3.1.4、IO模块3.1.5、解析器模块3.1.6、数据源模块3.1.7、缓存模块3.1.8、Binding模块3.1.9、注解模块3.1.10、异常模块3.2、核心处理层3.2.1、配置解析模块3.2.2、SQL解析模块3.2.3、插件模块3.3、接口层3.3.1、session模
小徐很努力
·
2024-01-06 00:39
源码解读
mybatis
java
开发语言
上一页
13
14
15
16
17
18
19
20
下一页
按字母分类:
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
其他