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
busybox源码剖析
全网最详细的ReentrantReadWriteLock
源码剖析
(万字长文)
碎碎念)花了两天时间,终于把ReentrantReadWriteLock(读写锁)解析做完了。之前钻研过AQS(AbstractQueuedSynchronizer)的源码,弄懂读写锁也没有想象中那么困难。而且阅读完ReentrantReadWriteLock的源码,正好可以和AQS的源码串起来理解,相辅相成。后面博主会尽快把AQS的源码解析整出来简介ReentrantReadWriteLock是
酒冽
·
2021-12-07 14:00
C++11 shared_ptr 与 make_shared
源码剖析
详解
目录0.前言1.源码分析1.1头文件1.2构造1.2.1shared_ptr的移动构造函数1.2.2shared_ptr的拷贝构造函数1.3赋值重载1.4修改的接口1.5获取2.make_shared2.1make_shared优点2.1.1效率高2.1.2异常安全2.2make_shared缺点3.举例参考:总结0.前言所谓智能指针,可以从字面上理解为“智能”的指针。具体来讲,智能指针和普通指针
·
2021-12-03 11:34
Docker容器基础入门认知-网络篇
比如下面我们起两个
busybox
$dockerrunbusy
Blackbinbin
·
2021-11-30 16:00
Vue.js
源码剖析
1、简述Vue首次渲染的过程。1.Vue初始化,调用newVue()之前,已经初始化完毕实例成员_init()方法$data、$props、$set、$delete、$watch属性_update、$forceUpdate、$destroy生命周期相关方法$on、$once、$off、$emit事件$nextTick、_render方法静态方法config、observable、util对象opt
·
2021-11-30 11:22
vue.js
《算法零基础100讲》(第39讲) 非比较排序 - 计数排序
文章目录零、写在前面一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、习题练习零、写在前面 这是《算法零基础100讲》专栏打卡学习的第三十九天了。
英雄哪里出来
·
2021-11-28 06:42
《算法零基础100讲》
算法
排序
哈希
计数排序
《算法零基础100讲》(第32讲) 多维枚举(二) - 进阶
文章目录零、写在前面一、概念定义二、题目描述三、算法详解四、
源码剖析
1、暴力枚举2、哈希降维五、推荐专栏六、粉丝福利零、写在前面 这是《算法零基础100讲》专栏打卡学习的第三十二天了。
英雄哪里出来
·
2021-11-21 07:50
《算法零基础100讲》
算法
枚举
多维枚举
暴力
《算法零基础100讲》(第31讲) 多维枚举(一) - 入门
文章目录零、写在前面一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利零、写在前面 这是《算法零基础100讲》专栏打卡学习的第三十一天了。
英雄哪里出来
·
2021-11-20 07:27
《算法零基础100讲》
算法
枚举
穷举
Go iota 原理和
源码剖析
iota是Go语言的一个保留字,用作常量计数器。由于iota具有自增特性,所以可以简化数字增长的常量定义。iota是一个具有魔法的关键字,往往令初学者难以理解其原理和使用方法。本文会从书写方法、使用场景、实现原理以及优缺点等各方面剖析iota关键字。1.书写方法正确写法:const(FirstItem=iotaSecondItemThirdItem)//或者constSingleItem=iota
·
2021-11-17 13:36
golang
Java的JDBC和桥接模式详解
目录本文参考桥接模式的定义与特点定义:优点:缺点:桥接模式的基本结构桥接模式的应用场景JDBC
源码剖析
Class.forName()方法com.mysql.cj.jdbc.Driver类引申:DriverManager
·
2021-11-17 11:04
linux实战清理挖矿病毒kthreaddi
安装
busybox
系统有故障,登录后如果发现用正常的命令找不到问题,那么极有可能该命令被篡改。
BusyBox
是一个集成了三百多个最常用Linux命令和工具的软件,里面就有我需要的top命令。
·
2021-11-16 23:03
linux
Go defer 原理和
源码剖析
(推荐)
目录1.编译器编译defer过程2.defer传递参数3.执行多条defer4.defer和return运行顺序Go语言中有一个非常有用的保留字defer,它可以调用一个函数,该函数的执行被推迟到包裹它的函数返回时执行。defer语句调用的函数,要么是因为包裹它的函数执行了return语句,到达了函数体的末端,要么是因为对应的goroutine发生了panic。在实际的go语言程序中,defer语
·
2021-11-13 12:05
Go defer 原理和
源码剖析
Go语言中有一个非常有用的保留字defer,defer语句可以调用一个函数,该函数的执行被推迟到包裹它的函数返回时执行。defer语句调用的函数,要么是因为包裹它的函数执行了return语句,到达了函数体的末端,要么是因为对应的goroutine发生了panic。在实际的go语言程序中,defer语句可以代替其它语言中try…catch…的作用,也可以用来处理释放资源等收尾操作,比如关闭文件句柄、
·
2021-11-12 15:27
golang后端c
Go defer 原理和
源码剖析
Go语言中有一个非常有用的保留字defer,它可以调用一个函数,该函数的执行被推迟到包裹它的函数返回时执行。defer语句调用的函数,要么是因为包裹它的函数执行了return语句,到达了函数体的末端,要么是因为对应的goroutine发生了panic。在实际的go语言程序中,defer语句可以代替其它语言中try…catch…的作用,也可以用来处理释放资源等收尾操作,比如关闭文件句柄、关闭数据库连
编程宝库
·
2021-11-12 14:00
深入浅出解析Java ThreadLocal原理
Tvalue)方法get()方法remove()方法实现思路总结3.InheritableThreadLocal与继承性ThreadLocal的不可继承性InheritableThreadLocal实现继承性的
源码剖析
如何理解这个继承性总结
·
2021-11-11 12:57
浅析React的Reconciliation(Diff)算法
React-ReconciliationReact
源码剖析
系列-不可思议的reactdiff前言前端框架诸如React/Vue之类的最大贡献之一,就是将广大的前端开发人员从繁琐的DOM操作中解放出来(即便有
ChrisZ_B612
·
2021-11-10 09:50
RocketMQ—NameServer总结及核心
源码剖析
一、NameServer介绍NameServer是专为RocketMQ设计的轻量级名称服务,具有简单、可集群横向扩展、无状态,节点之间互不通信等特点。整个Rocketmq集群的工作原理如下图所示:image.png可以看到,RocketMQ架构上主要分为四部分,Broker、Producer、Consumer、NameServer,其他三个都会与NameServer进行通信:NameServer:
IT巅峰技术
·
2021-11-01 13:50
JDK成长记20: ReenranctLock(3)释放锁的AQS底层原理
今天来我们看下:ReentrantLock中,当线程释放锁时的逻辑释放锁的过程及
源码剖析
释放锁的过程及
源码剖析
目前经过线程1、线程2使用ReentrantLock.lock()后的结果如下:线程2入队等待
·
2021-10-29 21:33
java
[源码解析] Pytorch 如何实现后向传播 (1)---- 调用引擎
[源码解析]Pytorch如何实现后向传播(1)----调用引擎目录[源码解析]Pytorch如何实现后向传播(1)----调用引擎0x00摘要0x01前文回顾1.1训练过程1.2例子1.3
源码剖析
0x02Python
罗西的思考
·
2021-10-25 19:00
BusyBox
72 变
BusyBox
简介
BusyBox
是一个遵循GPL协议、以自由软件形式发行的应用程序。
Li-Yongjun
·
2021-10-24 09:21
嵌入式
Linux
#
Shell
1024程序员节
busybox
《算法零基础100例》(第100例) 动态规划 - 区间DP
《算法零基础100例》真正的零基础文章目录一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利
英雄哪里出来
·
2021-10-21 13:52
《算法零基础100例》
动态规划
算法
《算法零基础100例》(第99例) 动态规划 - 路径DP
《算法零基础100例》真正的零基础文章目录一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利
英雄哪里出来
·
2021-10-21 13:12
《算法零基础100例》
动态规划
算法
《算法零基础100讲》(第19讲) 进制转换(一) - 入门
文章目录零、写在前面一、概念定义1、分解各位数字2、X进制转十进制3、十进制转X进制二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、习题练习零、写在前面 这是《算法零基础100讲》专栏打卡学习的第十九天了
英雄哪里出来
·
2021-10-20 21:29
《算法零基础100讲》
算法
进制转换
《算法零基础100讲》(第18讲) 线性枚举(二) - 统计法入门
文章目录零、写在前面一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、习题练习零、写在前面 这是《算法零基础100讲》专栏打卡学习的第十九天了。
英雄哪里出来
·
2021-10-20 21:19
《算法零基础100讲》
算法
枚举
线性枚举
《算法零基础100讲》(第2讲) 数列
文章目录零、写在前面一、概念定义1、等差数列2、等比数列3、斐波那契数列二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、习题练习零、写在前面 为了逼迫督促大家学习,《算法零基础100讲》设置了付费模式
英雄哪里出来
·
2021-10-20 20:32
《算法零基础100讲》
算法
数学
数列
斐波那契数列
《算法零基础100讲》(第1讲) 幂和对数
文章目录零、写在前面一、概念定义1、幂2、对数3、换底公式二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、习题练习零、写在前面 从本节开始,我们就要开始「学习算法」了,很多没有接触过算法的同学都会问
英雄哪里出来
·
2021-10-20 20:24
《算法零基础100讲》
算法
数据结构
零基础
数学
等差数列
Vue3.2 响应式原理
源码剖析
,及与 Vue2 .x响应式的区别
本文源码版本Vue3.2.11,Vue2响应式
源码剖析
点这里深入浅出Vue2响应式原理
源码剖析
我们知道相较Vue2.x的响应式Vue3对整个响应式都做了重大升级;然后Vue3.2相较3.0版本源码又做了许多变更
·
2021-10-20 16:12
Spring
源码剖析
之Spring处理循环依赖的问题
前言你是不是被这个骚气的标题吸引进来的,_喜欢我的文章的话就给个好评吧,你的肯定是我坚持写作最大的动力,来吧兄弟们,给我一点动力Spring如何处理循环依赖?这是最近较为频繁被问到的一个面试题,在前面Bean实例化流程中,对属性注入一文多多少少对循环依赖有过介绍,这篇文章详细讲一下Spring中的循环依赖的处理方案。什么是循环依赖依赖指的是Bean与Bean之间的依赖关系,循环依赖指的是两个或者多
·
2021-10-20 11:28
《算法零基础100例》(第64例) 贪心算法 - 1
《算法零基础100例》真正的零基础文章目录一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利一、概念定义二、题目描述三、算法详解四、
源码剖析
五、推荐专栏六、粉丝福利
英雄哪里出来
·
2021-10-20 09:12
《算法零基础100例》
算法
贪心
Spring Boot启动原理
源码剖析
一、springboot启动原理及相关流程概览springboot是基于spring的新型的轻量级框架,最厉害的地方当属自动配置。那我们就可以根据启动流程和相关原理来看看,如何实现传奇的自动配置二、springboot的启动类入口用过springboot的技术人员很显而易见的两者之间的差别就是视觉上很直观的:springboot有自己独立的启动类(独立程序)@SpringBootApplicati
从头再来_f
·
2021-10-19 16:37
SpringBoot
spring
spring
boot
java
mongoose V7.4核心篇之HTTP特定协议回调函数(六)
http_cb2.详聊structmg_http_message3.1.特殊协议回调函数http_cb在《mongooseV7.4核心篇之mgr管理用户请求套接字(五)》一文的2.4小节和《mongooseV7.4
源码剖析
之读取客户端数据
君子黎
·
2021-10-16 16:06
mongoose源码剖析
mongoose
web服务器
http
https
剖析Java中在Collection集合中使用contains和remove为什么要重写equals
目录引言
源码剖析
实例测试String类和包装类的特殊情况自定义类型总结引言在Collection集合中:contains方法是判断一个集合里面是否包含指定元素,如果有则返回true;remove方法是从集合中删除指定元素的单个实例
·
2021-10-15 12:24
Vue解读之响应式原理
源码剖析
目录初始化initState()initProps()initData()observe()ObserverdefineReactive()依赖收集DepWatcher依赖收集过程移除订阅派发更新notify()update()queueWatcher()flushSchedulerQueue()updated()defineProperty缺陷及处理Vue.set()重写数组方法总结先看张图,了
·
2021-10-12 12:10
深入浅出 Vue 响应式原理
源码剖析
先看张图,了解一下大体流程和要做的事初始化在newVue初始化的时候,会对我们组件的数据props和data进行初始化,由于本文主要就是介绍响应式,所以其他的不做过多说明来,看一下源码源码地址:src/core/instance/init.js-15行exportfunctioninitMixin(Vue:Class){//在原型上添加_init方法Vue.prototype._init=func
·
2021-10-10 15:57
前端vue.js框架源码
❤️ STL 序列式容器 vector 超硬核
源码剖析
❤️
目录前言第4章序列式容器4.1容器的概念与分类4.1.1序列式容器4.2vector4.2.1vector概述4.2.2vector定义摘要4.2.3vector的迭代器4.2.4vector的数据结构4.2.5vector的构造与内存管理4.2.6vector的元素操作前言国庆七天假宛如一天假,定睛一看又要上班…国庆档电影院热闹了不少,《长津湖》真的值回票价,吴京真不错,意外的是易烊千玺竟然演出
哪吒要进厂啦
·
2021-10-06 14:11
C++
STL标准模板库
stl
源码
c++
静态资源与首页展示【
源码剖析
】
如果是一个web应用,在main下面会有个webapp,之前都是将所有页面导在这里;现在springboot也有静态资源放置的位置,但是有规定!首先,了解一下静态资源映射规则!在idea界面doubleShift键:搜索WebMvcAutoConfiguration,SpringMVC的web配置都在这个配置类里面,其中有一个方法:addResourceHandlers添加资源处理第一种静态资源映
龍弟-idea
·
2021-09-30 20:43
源码剖析
java
maven
spring
boot
grpc-go
源码剖析
七十七之压缩特性介绍
从本小节开始介绍压缩特性相关原理。1、grpc框架原生支持哪些压缩协议?目前支持gzip压缩算法;在后面的章节,会提供代码,让grpc框架支持lz4压缩算法。2、grpc框架是如何支持不同的压缩算法的?grpc框架并不负责具体的实现压缩算法;grpc框架规定好处理流程,流程中可能会存在多个环节;只要压缩算法支持这个流程
grpc-go源码剖析与实战 图文专栏
·
2021-09-24 05:35
grpc-go源码剖析与实战
golang
grpc-go
grpc-go源码
grpc源码
架构师
Java并发编程之ReentrantLock实现原理及
源码剖析
目录一、ReentrantLock简介二、ReentrantLock使用三、ReentrantLock源码分析1、非公平锁源码分析2、公平锁源码分析前面《Java并发编程之JUC并发核心AQS同步队列原理剖析》介绍了AQS的同步等待队列的实现原理及源码分析,这节我们将介绍一下基于AQS实现的ReentranLock的应用、特性、实现原理及源码分析。一、ReentrantLock简介Reentran
·
2021-09-23 18:45
grpc-go
源码剖析
七十六之grpc框架是如何实现多路复用的?
本篇文章重点从源码的视角分析多路复用的原理;1、实现多路复用的基本思路?grpc底层是用http2作为传输协议的,HTTP2的最小传输数据单位是帧frame;帧又分为头帧,数据帧,Ping帧等;客户端的一次服务请求,需要有头帧,数据帧的组合才能完成;当某次服务请求的数据量超过了http2的帧的最大传输字节时,那么此时,应该如何来传输?肯定需要多个数据帧传输,才能完成;那么出现新的问题,怎么知道不同
grpc-go源码剖析与实战 图文专栏
·
2021-09-23 05:33
grpc-go源码剖析与实战
golang
grpc-go
grpc-go源码
rpc
架构师
grpc-go
源码剖析
七十五之多路复用简单介绍以及测试用例说明?
本小节开始介绍grpc框架中的多路复用相关原理。1、多路复用可以实现什么功能?或者可以使用在什么场景下?可以使用同一链接处理多个服务请求;同一服务的多次请求,或者不同服务的多次请求;从而提供了链接的利用率2、grpc框架为什么会选择HTTP2作为传输协议呢?至少原因之一:http1.1不支持多路复用;在HTTP1.1中每一次的请求都要建立一次连接;一个完整的服务请求,可能需要建立多次连接,既然多次
grpc-go源码剖析与实战 图文专栏
·
2021-09-22 05:10
grpc-go源码剖析与实战
golang
grpc-go源码
grpc-go
go编程
架构师
grpc-go
源码剖析
七十四之什么情况下服务器端通知客户端,双方关闭链接?(goAway帧处理逻辑)
本小节主要想分享的是服务器端向客户端发送goAway帧的逻辑,以及客户端是如何处理goAway帧的?达到的效果就是关闭连接。1、服务器端跟客户端交互处理goAway帧的流程图可以通过下图,简单了解服务器端跟客户端是如何处理goAway帧,是互相交互的过程。主要流程说明:(在启动keepalive的场景下)服务器端在处理goAway帧时,最多会经历三个阶段:第一阶段:服务器端向客户发送第一个goAw
grpc-go源码剖析与实战 图文专栏
·
2021-09-20 07:49
grpc-go源码剖析与实战
golang
grpc-go
grpc-go源码
grpc
rpc
grpc-go
源码剖析
七十三之客户端keepalive原理图介绍以及源码分析
本小节简单介绍一下客户端keepalive的原理。1、客户端keepalive的原理图客户端keepalive功能:主要是提供了针对是否接收到服务器端发送过来的数据的处理逻辑不提供针对链接处于idle状态,或者链接运行时长超过规定时长的处理逻辑。2、客户端keepalive源码分析2.1、客户端何时触发keepalive功能启动呢?跟服务器端建立链接的过程阶段,启动的keepalive功能。进入g
grpc-go源码剖析与实战 图文专栏
·
2021-09-17 05:02
grpc-go源码剖析与实战
golang
grpc-go
grpc
架构师
微服务
SpringIOC原理-更加详细的
源码剖析
剖析源码前建议大家先看一下体系图大致了解一下SpringIOC的架构图ApplicationContext到BeanFactory的体系图ClassPathXmlApplication到ApplicationContext的体系图解本文以XML注册Bean为例详解SpringIOC原理一初始化工作第一步,我们肯定要从ClassPathXmlApplicationContext的构造方法说起。pub
名字是乱打的_闭关写项目中
·
2021-09-14 02:12
Spring IOC
源码剖析
_如何整体认知Spring体系结构
目录如何整体认知Spring体系结构一、来自官网的Spring二、Spring的优缺点三、一张图理解SpringFramework4.x四、详解“七层”宝塔1.核心容器(CoreContainer)2.数据访问/集成(DataAccess/Integration)层3.Web层4.AOP(AspectOrientedProgramming)模块5.植入(Instrumentation)模块6.消息
·
2021-09-13 17:00
Nacos源码系列——第三章(全网最经典的Nacos集群源码主线剖析)
上两个章节讲述了Nacos在单机模式下的服务注册,发现等
源码剖析
过程,实战当中其实单机是远远不够的,那么Nacos是如何在集群模式下是如何保证节点状态同步,以及服务变动,新增数据同步的过程的!
风清扬逍遥子
·
2021-09-11 22:16
Dubbo微服务专题
java
Nacos
grpc-go
源码剖析
六十六之拦截器介绍
本节开始介绍拦截器interceptor相关原理;1、拦截器的分类可以分为:一元拦截器用户定义的拦截器只能有一个生效;特点是:在链式拦截器之前执行。一元链式拦截器有多个拦截器存在时,按照一定的顺序执行的;流式拦截器流式链式拦截器这里只介绍一元拦截器,一元链式拦截器。2、拦截器的使用场景?拦截器可以在以下场景中使用:日志,认证授权,指标统计等3、测试用例
grpc-go源码剖析与实战 图文专栏
·
2021-09-08 05:07
grpc-go源码剖析与实战
golang
grpc-go
docker
kubernetes
微服务架构
busybox
错误汇总
mini6410
busybox
arm-linux-gcc:未找到命令问题编译
BusyBox
时scripts/Makefile.build:197:recipefortarget‘loginutils/passwd.o
红发魔女
·
2021-09-06 14:20
linux
grpc-go
源码剖析
六十二之健康检测相关介绍
从本小节开始,介绍HealthChecking相关原理;1、健康检测HealthChecking是用来做什么的?或者说,健康检测用来解决什么问题?主要是解决以下场景:当服务器端的服务状态发生变化之后,如何通知客户端,客户端需要如何处理健康检测更适合服务端实例比较多的场景:当检测到某个服务实例中服务不能正常对外提供服务时,就可以重新选择另外一个服务实例进行连接。如果出问题的服务实例恢复正常后,还可以
grpc-go源码剖析与实战 图文专栏
·
2021-09-02 05:09
grpc-go源码剖析与实战
golang
grpc
grpc-go源码剖析
微服务架构
分布式架构
从c++标准库指针萃取器谈一下traits技法(推荐)
本篇文章基于gcc中标准库
源码剖析
一下标准库中的模板类pointer_traits,并且以此为例理解一下traits技法。说明一下,我用的是gcc7.1.0编译器,标准库源代码也是这个版本的。
·
2021-08-23 18:39
【
源码剖析
】goframe的”平滑“重启并不平滑?
首先说一下平滑重启的定义:优雅的重启服务,重启过程不会中断已经活跃的链接。我们熟知的nginxreload、php-fpmreload都是平滑重启,重启时,正在进行的请求依然能执行下去,直到超过指定的超时时间,而这里特别提一下php-fpmreload有个坑,它默认不是平滑重启的,因为process_control_timeout(设置子进程接受主进程复用信号的超时时间)的配置默认为0秒,代表超时
·
2021-08-21 21:33
golanggoframe
grpc-go
源码剖析
五十三之取消功能相关介绍以及测试用例介绍
从本小节开始,进入到cancellation功能介绍章节;1、取消功能相关介绍1.1、取消cancellation功能是用来做什么的?或者说实现什么效果?取消功能:允许客户端单方面主动取消正在执行的服务请求;服务器端接收到客户端的cancel取消指令后,会取消正在执行的任务。类似这种场景:用户购买商品时,进入支付阶段后,允许用户单方面主动停止,结束。
grpc-go源码剖析与实战 图文专栏
·
2021-08-21 08:58
grpc-go源码剖析与实战
grpc
golang
docker
kubernetes
微服务架构
上一页
26
27
28
29
30
31
32
33
下一页
按字母分类:
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
其他