ARouter 源码解析(一) APT模块零、简介 ARouter 使用了@Autowired , @Route等注解来实现需要的功能,我们的源码分析也从注解相关的模块开始。ARouter的源码中与注解相关的模块是 arouter-annotation (包含了所有注解类) , arouter-compiler (即APT模块)。 对APT(注解处理器)还不了解的可以先看这篇博客一、arouter
LeakCanary源码解析本文我们来看下LeakCanary的源码,以下内容基于com.squareup.leakcanary:leakcanary-android:1.6.3LeakCanary.install(this)从install方法进入public static @NonNull RefWatcher install(@NonNull Application application)
文章目录一、怎么查找开源项目二、怎么使用项目练手 一、怎么查找开源项目以GitHub为例,GitHub上的开源项目非常多,且全面,不过速度比较慢。 码云gitee速度比较快,如果需要的话,可以将GitHub上的代码同步到码云上从码云下载。而且码云gitee搭建个人博客也快,还有一个Web IDE的功能,可在线浏览代码,且体验很好。GitHub上的项目,一般有项目名,项目描述信息,README 等
# 如何查看Java MySQL源码 ## 步骤流程 | 步骤 | 内容 | | --- | --- | | 1 | 确认MySQL版本 | | 2 | 下载MySQL源码 | | 3 | 解压源码 | | 4 | 导入源码至IDE | | 5 | 查看源码 | ## 具体步骤 ### 步骤1:确认MySQL版本 首先,你需要确认你当前使用的MySQL版本,以便下载对应的源码。 ###
 BUILD这个目录在本系列的上篇文章中我们仔细看过,内含各种平台的编译脚本,这里就不仔细说了。  client  这个目录下有如下比较让人眼熟的文件: mysql.cc, mysqlcheck.c, mysqladmin.cc, mysqlshow.c,等等,如果你编译一下就会发现那些眼熟的程序也出现了,比如mysql。明白了吧,这个目录就是那些客户端程序所在的目
转载 2023-08-23 22:49:01
49阅读
## AndroidX 源码在哪里 AndroidX 是一个由 Google 提供的支持库,旨在简化 Android 应用程序开发过程,并提供向后兼容性。许多开发者都对 AndroidX 的源码感兴趣,想要深入了解其实现细节。那么,AndroidX 的源码究竟在哪里呢? AndroidX 的源码实际上是开源的,托管在 Google 的 GitHub 上。您可以在 [AndroidX GitHu
原创 6月前
233阅读
1. 运行机制在k8s集群中,每个node节点上都会运行一个kubelet进程。该进程会处理master下发的任务,定时同步自身的状态并管理Pod。总体来看,kubelet进程主要完成以下几部分工作:节点管理 - 以固定的时间间隔同步本节点的状态信息到Api Server上。Pod管理 - 从文件、Http端点、API Server中同步pod信息,创建并管理节点上的所有pod。容
使用yum安装的MySQL一般版本比较旧,但是运行稳定。如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了。一、下载安装包(一)、先下载MySQL源码在Select Operationg System中选择Source Code;在下面的Select OS Version选择Generic Linux(Architecture Independent);然后再下面的部分可以
转载 2023-07-13 18:35:58
45阅读
1、BUILD     BUILD目录是编译、安装脚本目录,绝大部分以compile-开头,其中的SETUP.sh脚本为C和C++编译器设置了优化选项。 2、client     client目录包括常用命令和客户端工具代码,这些源代码文件中包括密码确认功能get_password.c、SSL连接可行性检
转载 2023-07-21 20:04:18
76阅读
[root@localhost local]# chown -R mysql:mysql mysql [root@localhost local]# ll mysql lrwxrwxrwx 1 mysql mysql 36 Apr 18 21:22 mysql -> mysql-5.7.20-linux-glibc2.12-x86_64/ [root@localhost local]# •
OpenCV使用级联分类器做人脸识别的时候,调用了void CascadeClassifier::detectMultiScale方法,采用的滑窗机制,这里列出该函数的源码实现过程。代码读起来不复杂,但是很有趣^_^。void CascadeClassifier::detectMultiScale( const Mat& image, vector<Rect>& obj
本文主要分析8.0.22Mysql的SELECT执行流程,源码来自:https://github.com/mysql/mysql-server。本文概括性的分析了Mysql通过网络请求获取客户端的SQL,然后将SQL转换成LEX语法树,再转换成具体执行,最后从内存或磁盘中加载PAGE得到最终想要的RECORD。一、先介绍Mysql入口及网络请求1.1、mysql的入口//main.cc int m
转载 2023-08-31 06:55:20
309阅读
# 如何找到 Docker 源码 ## 引言 在学习和使用 Docker 的过程中,有时候我们需要查看 Docker 源码来深入理解其实现原理或者进行二次开发。本文将介绍如何找到 Docker 源码并进行相关配置,以帮助新手开发者快速入门。 ## 整体流程 下面是整个流程的概览,可以通过表格展示每个步骤及其对应的操作。 | 步骤 | 操作 | |---|---| | 1 | 下载 Docke
原创 9月前
111阅读
# Python sorted函数源码在哪里? 在学习和使用Python编程语言的过程中,我们经常会使用到`sorted`函数,它可以对一个可迭代对象进行排序。那么,`sorted`函数的源码在哪里呢?在本篇文章中,我们将探索`sorted`函数的源码所在,并解析其中的实现细节。 ## sorted函数的基本用法 在了解`sorted`函数的源码之前,我们先来了解一下它的基本用法。`sort
原创 2023-09-17 07:58:39
156阅读
这是搜索递进的,开始针对你的源码提问,我没怎么过脑,后来随着搜索递进。与java一些常问的某结构,底层扩容,就会涉及jvm之类。我先打住。 你问的其实是函数调用实现,我下意识找的哪一个MDN是偏兼容具体实现后来随着搜索递进,这一个比较靠谱。 然后给了我就找到google浏览器开源的地方 1、Google Chrome 源码 SVN&nbs
Redisson简介Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供了许多分布式服务。其中包括(BitSet, Set, Multimap, SortedSet, Map, List, Queue, BlockingQueue, Deque, BlockingDeque, Sema
转载 2023-09-01 14:49:22
41阅读
本文是进行一次尝试,目标是在MacOS操作系统(版本:10.15.7 Catalina)上完成一次MySQL源码的编译、运行说是尝试,是因为网上所有教程几乎都是基于Linux操作系统的,虽说这二者都是Unix系列,但C源码编译安装涉及到许多依赖库,细节上有区别,不完全等价我参考的教程有 BILIBILI:怎样从源码安装MySQL数据库,这是一篇讲的比较简单的视频教程,其中有博客地址:Apache服
转载 2023-08-28 13:24:20
87阅读
环境:[root@localhost python3]# cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core) [root@localhost python3]#1、下载Python方式一:进入 https://www.python.org/downloads/source/ 选择相应版本下载之后用FTP工具上传到Linux上
今天介跟大家分享一下我平时阅读源码的几个小技巧,对于阅读java中间件如Spring、Dubbo等框架源码的同学有一定帮助。本文基于Eclipse IDE,我们每天都使用的IDE其实提供了很多强大的功能,掌握它们,往往能够事半功倍。1、Quick Type Hierarchy 快速查看类继承体系。快捷键:Ctrl + T查看类很多人可能都知道,可源码阅读的时候更多用来查看方法体系更重要,可以方便快
本篇不直接解读vuejs的双向绑定的原理,而是已读源码的视角来看vue是怎么做的。1、下载vuejs源码mkdir project && cd project && git clone https://github.com/vuejs/vue.git npm i2、开始一步一步读代码打开package.json。看看scripts,我们先只看dev,这里有三个:fu
  • 1
  • 2
  • 3
  • 4
  • 5