源码chromium模板member
我们为什么要阅读webpack源码
相信很多人都有这个疑问,为什么要阅读源码,仅仅只是一个打包工具,会用不就行了,一些配置项在官网,或者谷歌查一查不就好了吗,诚然在大部分的时候是这样的,但这样在深入时也会遇到以下几种问题。 webpack 配置繁琐,具有 100 多个内置插件,200 多个钩子函数,在保持灵活配置的同时,也把问题抛给了 ......
Gin使用及源码简析
1. Gin简介 前面通过两篇文章分享了Golang HTTP编程的路由分发、请求/响应处理。 Golang HTTP编程及源码解析-路由分发 Golang HTTP编程及源码解析-请求/响应处理 可以看出来Golang原生HTTP编程在路由分组、动态路由及参数读取/验证、构造String/Data ......
Apache HttpClient使用和源码分析
在上文中分析了 HttpURLConnection的用法,功能还是比较简单的,没有什么封装 接下来看看Apache HttpClient是如何封装httpClient的 使用的版本 <dependency> <groupId>org.apache.httpcomponents.client5</gr ......
通过源码分析RocketMQ主从复制原理
RocketMQ是一个纯Java、分布式、队列模型的开源消息中间件,具有高性能、高可靠、高实时、分布式特点。本篇文章通关源码分析深入地介绍了RocketMQ主从复制原理。 ......
【LeetCode回溯算法#07】子集问题I+II,巩固解题模板并详解回溯算法中的去重问题
子集 力扣题目链接 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1, ......
深入理解 Python 虚拟机:整型(int)的实现原理及源码剖析
在本篇文章当中主要给大家介绍在 cpython 内部是如何实现整型数据 int 的,主要是分析 int 类型的表示方式,分析 int 类型的巧妙设计。 ......
深入理解 Python 虚拟机:复数(complex)的实现原理及源码剖析
在本篇文章当中主要给大家介绍在 cpython 虚拟机当中是如何实现 复数 complex 这个数据类型的,这个数据类型在 cpython 当中一应该是一个算比较简单的数据类型了,非常容易理解。 ......
OpenMP task construct 实现原理以及源码分析
在本篇文章当中主要给大家介绍在 OpenMP 当中 task 的实现原理,以及他调用的相关的库函数的具体实现。在本篇文章当中最重要的就是理解整个 OpenMP 的运行机制。 ......
深入理解 Python 虚拟机:列表(list)的实现原理及源码剖析
在本篇文章当中主要给大家介绍 cpython 虚拟机当中针对列表的实现,在 Python 中,List 是一种非常常用的数据类型,可以存储任何类型的数据,并且支持各种操作,如添加、删除、查找、切片等,在本篇文章当中将深入去分析这一点是如何实现的。 ......
深入理解 Python 虚拟机:元组(tuple)的实现原理及源码剖析
在本篇文章当中主要给大家介绍 cpython 虚拟机当中针对列表的实现,在 Python 中,tuple 是一种非常常用的数据类型,在本篇文章当中将深入去分析这一点是如何实现的。 ......
深入理解 Python 虚拟机:浮点数(float)的实现原理及源码剖析
深入理解 Python 虚拟机:浮点数(float)的实现原理及源码剖析 在本篇文章当中主要分析在 cpython 虚拟机当中 float 类型的实现原理以及与他相关的一些源代码。 Float 数据结构 在 cpython 虚拟机当中浮点数类型的数据结构定义如下所示: typedef struct ......
设计模式之(13)--模板方法模式
今天我们来学习下模板方法设计模式。 模板方法(Template Method Pattern):抽象的父类中定义一个操作中算法的骨架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构,即可重新定义该算法的某些特定步骤。简单地讲,就是“父类的模板方法定义不变的流程,子类重写流程中的方法”。 ......
(原创)多线程并发:AQS源码分析(1)——独占锁的实现原理
谈到java中的并发,我们就避不开线程之间的同步和协作问题,谈到线程同步和协作我们就不能不谈谈jdk中提供的AbstractQueuedSynchronizer(翻译过来就是抽象的队列同步器)机制; (一)、AQS中的state和Node含义: AQS中提供了一个int volatile state ......
(原创)多线程并发:AQS源码分析(2)——共享锁的实现原理
在上一篇文章多线程并发(一)中我们通过acquire()详细地分析了AQS中的独占锁的获取流程,提到独占锁,自然少不了共享锁,所以我们这边文章就以AQS中的acquireShared()方法为例,来分析下并发编程中共享锁的获取与释放吧,获取共享锁的大体流程和获取独占锁一样,但是因为共享锁可以被多个线 ......
算法基础模板
时空复杂度分析 一般ACM或者笔试题的时间限制是1秒或2秒。在这种情况下,C++代码中的操作次数控制在10^7^~10^8^为最佳。下面给出在不同数据范围下,代码的时间复杂度和算法该如何选择: n ≤ 30,指数级别,dfs+剪枝,状态压缩dp n ≤ 100 => O(n^3^),floyd,dp ......
shin-monitor源码分析
在经过两年多的线上沉淀后,将监控代码重新用 TypeScript 编写,删除冗余逻辑,正式开源。 根据 shin-monitor 的目录结构可知,源码集中在 src 目录中。关于监控系统的迭代过程,可以参考专栏。 一、入口 入口文件是 index.ts,旁边的 utils.ts 是一个工具库。 在 ......
【RocketMQ】DLedger选主源码分析
RocketMQ 4.5版本之前,可以采用主从架构进行集群部署,但是如果master节点挂掉,不能自动在集群中选举出新的Master节点,需要人工介入,在4.5版本之后提供了DLedger模式,使用Raft算法,如果Master节点出现故障,可以自动选举出新的Master进行切换。 Raft协议 R ......
【RocketMQ】Dledger日志复制源码分析
消息存储 在 【RocketMQ】消息的存储一文中提到,Broker收到消息后会调用CommitLog的asyncPutMessage方法写入消息,在DLedger模式下使用的是DLedgerCommitLog,进入asyncPutMessages方法,主要处理逻辑如下: 调用serialize方法 ......
redis georadius源码分析与性能优化
原文地址: https://blog.fanscore.cn/a/51/ 背景 最近接到一个需求,开发中使用了redis georadius命令取附近给定距离内的点。完工后对服务进行压测后发现georadius的性能比预期要差,因此我分析了georadius的源码,并对原始的实现方案进行了优化,总结 ......
调式源码解决 seata 报错 can not get cluster name 问题
最近在使用Spring Cloud整合分布式事务seata,项目启动之后,控制台一直报错: can not get cluster name in registry config 'service.vgroupMapping.nacos-provide-order-seata-service-gro ......
slate源码解析(一)- 序言
笔者从大学时期就开始接触的前端,在刚去实习的时候就被导师安排去做内网的一个小富文本工具。之后从毕业后干的第一份工作游戏客户端,到现在做着可视化相关的前端工作,都有在做富文本相关的内容。可以说是和**富文本编辑器(Rich Text Editor)**有着不解之缘。 WYSIWYG 如无特别指出,该系 ......
slate源码解析(二)- 基本框架与数据模型
源码架构 首先来看下最核心的slate包下的目录: 可以看到,作为一个开源富文本库,其源码是相当之少。在第一篇文章中说过,Slate没有任何开箱即用的功能,只提供给开发者用于构建富文本所需的最基本的一套schema及操作API。因此源码的体量自然就要少许多。 我们来预览上图中各个目录下文件所负责的功 ......
《关于我因为flink成为spark源码贡献者这件小事》
各位读者老爷请放下手上的板砖,我可真没有标题党,且容老弟慢慢道来。 spark和flink本身相信我不用做过多的介绍,后端同学不管搞没搞过大数据,应该都多多少少听过。 如果没听过,简单说,spark和flink之于大数据,就好比vue和react之于前端,就好比spring家族之于java。 从20 ......
SpringCloud 源码学习笔记2——Feign声明式http客户端源码分析
系列文章目录和关于我 一丶Feign是什么 Feign是一种声明式、 模板化的HTTP客户端。在Spring Cloud中使用Feign,可以做到使用HTTP请求访问远程服务,就像调用本地方法一一样的, 开发者完全感知不到这是在调用远程方法,更感知不到在访问HTTP请求。接下来介绍一下Feign的特 ......
服务端技术方案模板参考
如何写好一个技术方案对于开发来说非常关键,这是一个工程类技术方案模板,基于我之前的一些积累,适合相对独立的业务需求承接。 实际开发中可以作为一个模板来套用,在这个基础上进行增加或者删减。 一、概要 很多时候,大家做项目的时候容易陷入为了上线而上线,尤其技术出身的同学,接到一个项目后,会陷入快速了解需 ......
Golang HTTP编程及源码解析-路由分发
1、网络基础 基本TCP客户-服务器程序Socket编程流程如如下图所示。 TCP服务器绑定到特定端口并阻塞监听客户端端连接, TCP客户端则通过IP+端口向服务器发起请求,客户-服务器建立连接之后就能开始进行数据传输。 Golang的TCP编程也是基于上述流程的。 2、Golang HTTP编程 ......
0源码基础学习Spring源码系列(一)——Bean注入流程
通过本文,读者可以0源码基础的初步学习spring源码,并能够举一反三从此进入源码世界的大米!
由于是第一次阅读源码,文章之中难免存在一些问题,还望包涵指正! ......
vue原理:diff、模板编译、渲染过程等
一、虚拟DOM: 因为DOM操作非常消耗性能,在操作DOM时,会出现DOM的回流(Reflow:元素大小或者位置发生改变)与重绘(元素样式的改变)使DOM重新渲染。 现在的框架Vue和React很少直接操作DOM,因为两者都是数据驱动视图,只会对数据进行增删改的操作 因此,二者使用虚拟DOM(vdo ......
OpenMP Sections Construct 实现原理以及源码分析
在本篇文章当中主要给大家介绍 OpenMP 当中主要给大家介绍 OpenMP 当中 sections construct 的实现原理以及他调用的动态库函数分析。如果已经了解过了前面的关于 for 的调度方式的分析,本篇文章就非常简单了。 ......