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
skynet源码剖析
Muduo(C++11版本)
源码剖析
(一)———总体架构
前言:目前工作虽然是C++/Qt客户端方向,但是研究了一段时间c++高性能服务器的一些架构设计,正好学习了一款flamingo这一款开源即时通讯软件,里面的网络层是用c++11改写的原来boost版的muduo,索性就写几篇博客分析下muduo这款网络库的源码,其实已经有不少人分析过该库,我在这里仅仅谈我的个人对该库设计、用法的一些理解,不对或者不准确的地方还请指出,有一些地方会直接引用陈硕老师的
苏州-青蛙
·
2020-08-14 14:43
c++
服务器
STL
源码剖析
笔记
在STL中,迭代器使得容器与算法分离开来,迭代器会定义五种类型。Hash_table是一种数据结构,和RB_tree类似。其中set、map、multi_set、multi_map都是基于RB_tree。在STL中,patial_sort()和nth_element()不一样。patial_sort是的作用是对前n个元素进行排序,这个算法维持一个n个元素的堆,对这个堆进行维护。如果是对前n个升序排
mcfer
·
2020-08-14 10:03
spring Quartz 源码分析--触发器类CronTriggerBean
源码剖析
前面我们讲到了Quartz框架在项目中的实现,在Quartz中的重要API有两个重要的触发器类:CronTrigger和SimpleTrigger在Quartz框架中这两个触发器都继承了一个抽象基类Trigger,这个类有触发器共有的属性name,jobName,group,jobGroup以及description;但是在spring框架中使用的触发器类是org.springframework.
jack_wang001
·
2020-08-14 07:09
java工具源码剖析
k8s代码走读---kube-controller-manager
这几天也看了《kubernetes
源码剖析
》的前两章,这本书还是不错的,推荐大家阅读。前面两章主要讲解什么是kubernets,它的来历,它的架构,它的代码结构,以及它的编译过程。
七度黑光
·
2020-08-14 04:46
PhotoView开源项目剖析
功能特性支持放缩超出边界,多点触控和双击事件滚动和滑动和ViewPager等能完美兼容矩阵变化等有回调,方便前台其他展示的改变单击,长按都有回调提醒
源码剖析
那么怎么来学习他的源码呢,我们从以下几个部分来说
吴佳峻
·
2020-08-14 04:57
Android应用开源项目解读
Android开源项目解读
《python
源码剖析
》笔记 python多线程机制
本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie1.GIL与线程调度Python中的线程是操作系统的原生线程,Python虚拟机使用一个全局解释器锁(GlobalInterpreterLock)来互斥线程对Python虚拟机的使用为了支持多线程机制,一个基本的要求就是需要实现不同线程对共享资源访问的互斥,所以引入了GIL。GIL:在一个线程
senliezheng
·
2020-08-14 00:51
Python
C/C++/STL
Python专栏
泛读《STL
源码剖析
》第二章:空间配置器
目录目录目录目录前言SGI特殊空间配置器,std::alloc构造和析构基本工具:construct()与destroy()std::alloc空间的配置与释放一级配置器:二级配置器:空间配置函数allocate()空间释放函数deallocate()重新填充freelists:refill()函数内存池内存基本处理工具①uninitialized_copy②uninitialized_fill③
z-k
·
2020-08-13 21:27
《STL源码剖析》
STL源码分析读书笔记--第二章--空间配置器(allocator)
声明:侯捷先生的STL
源码剖析
第二章个人感觉讲得蛮乱的,而且跟第三章有关,建议看完第三章再看第二章,网上有人上传了一篇读书笔记,觉得这个读书笔记的内容和编排还不错,我的这篇总结基本就延续了该读书笔记的框架
weixin_33743703
·
2020-08-13 21:30
c/c++
数据结构与算法
重读STL
源码剖析
:析构
纯虚析构函数理论上来说,将一个函数声明为纯虚函数后,这个类即变为抽象类。纯虚函数只提供接口,而不提供实现,但纯虚析构函数一定要提供定义。这是由C++特性决定的,编译器对派生类的析构函数会进行扩展,以静态调用的方式调用其每一个虚基类和上基类的析构函数,尽管是一个抽象类,但仍然要为这个纯虚析构提供实现,即使是awov::~awov(){}这样没有任何操作的实现,因为如果不提供,将导致链接失败虚函数与内
weixin_30918415
·
2020-08-13 21:35
Android
源码剖析
之Framework层实战版(Ams管理Activity启动)
本文来自http://blog.csdn.net/liuxian13183/,引用必须注明出处!讲到实战,就不得不拿两个例子来说明,本篇想拿的是应用最广泛的两个:Ams和Wms,一个管理activity,一个管理窗口,而前面我们已经讲了不少,本篇不再赘述。关于Ams对activity的管理,无非这几个方面:启动哪个activity、物理按键对activity处理、内存骤减时activity的回收规
weixin_30314813
·
2020-08-13 20:42
【STL
源码剖析
】第二章 空间配置器(allocator)
第二章空间配置器(allocator)具备次配置力(sub-allocation)的SGI空间配置器SGI标准的空间配置器SGI定义了一个符合部分标准,名为allocator的配置器,效率不高,只把c++的::operatornew和::operatordelete做了一层薄薄的包装,SGI没有用过。SGI特殊的空间配置器,std::allocallocator只是基层内存配置/释放行为(也就是:
stt2019
·
2020-08-13 19:58
STL源码剖析
SSD pytorch
源码剖析
(不包含模型搭建及训练、测试)及训练方法剖析
参考代码:https://github.com/amdegroot/ssd.pytorchhttps://github.com/acm5656/ssd_pytorchimportConfigfromitertoolsimportproductasproductfrommathimportsqrtassqrtimporttorch#获取先验框defdefault_prior_box():mean_l
小伟db
·
2020-08-13 17:13
STL
源码剖析
_读书笔记:第二章 空间配置器 内存池篇
空间配置器:作用:帮助容器配置空间存放信息SGI空间配置器标准空间配置器allocator:效率不好,只对::operatornew和::operatordelete做一层封装特殊空间配置器alloc:将new算式分为两阶段:用::operator配置内存,构造对象;将delet算式分为两阶段:析构对象,用::operatordelete释放内存特殊空间配置器内存配置:allocate(),判断区
天地一扁舟
·
2020-08-13 16:40
STL
源码剖析
_读书笔记:第一章 STL概论和版本简介
第一章:前言:最近想深究一下STL的源码,主要是以前只知道对容器,迭代器,算法,函数对象等怎么使用,但却对其内部机制不甚了解。老话说得好:我们用交通工具,不是因为我们不会走路,而是我们会走路,有复用的工具在那里,因此可以使用。不仅要会用车轮,也要知道车轮内部是怎么工作的。闲话少叙,进入正题吧。正文:第一章主要从宏观角度介绍了STL的六大组件。1)六大组件作用:容器:存放数据的迭代器:遍历容器的指针
天地一扁舟
·
2020-08-13 16:39
STL
源码剖析
_读书笔记:第二章 空间配置器 构建简单的空间配置器篇
空间配置器:作用:帮助容器配置空间存放信息SGI空间配置器标准空间配置器allocator:效率不好,只对::operatornew和::operatordelete做一层封装特殊空间配置器alloc:将new算式分为两阶段:用::operator配置内存,构造对象;将delet算式分为两阶段:析构对象,用::operatordelete释放内存特殊空间配置器内存配置:allocate(),判断区
天地一扁舟
·
2020-08-13 16:39
skynet
--lua层消息处理机制
lua层消息处理机制协程的概念在讨论lua层的消息处理机制之前,首先要了解一个概念,协程。协程可以视为程序的执行单位,和线程不同,线程是抢占式的,多条线程是并行时运行的,而协程则不是,协程是协同式的,比如有三个协程按顺序先后创建coA、coB、coC,那么在没有任意一条协程主动挂起(yield)的情况下,执行顺序则是coA执行完,在执行coB,然后再执行coC。也就是说,除非有协程主动要求挂起,否
o8413897
·
2020-08-13 16:59
skynet
STL 之 multiset
源码剖析
G++2.91.57,cygnus\cygwin-b20\include\g++\stl_multiset.h完整列表/***Copyright(c)1994*Hewlett-PackardCompany**Permissiontouse,copy,modify,distributeandsellthissoftware*anditsdocumentationforanypurposeishere
hustyangju
·
2020-08-13 14:34
STL
《STL
源码剖析
》读书笔记---第4章 序列式容器
序列式容器:array(build-in)、vector、heap(以算法形式呈现)、priority-queue、list、slist(非标准)、deque、stack(配接器)、queue(配接器)所谓序列式容器,其中的元素都可序,但是未必有序。---------------------------------------------------------------------------
劉俊
·
2020-08-13 14:06
STL
读书笔记
C/C++
多线程学习(三)---Thread源码解读
参考文章:Thread
源码剖析
多线程全面详解总结Java多线程之interrupt()的深度研究jdk版本:1.8.0_2011.线程名我们在使用多线程的时候,想要查看线程名是很简单的,调用Thread.currentThread
一个胖子IT男
·
2020-08-13 12:17
多线程
skynet
框架 源码分析 一
本人所看的
skynet
框架,是云风所写的开源分布式服务器系统。
悬崖边冥思
·
2020-08-13 12:06
linux
lua
skynet
框架 源码分析 二
在
skynet
中,我主要看到了三种,一种是从客户端流到服务器,而后服务器处理完毕之后,发送回客户端。第二种是一个harbor流向另外一个harbor,这应该就是服务进程之间通过套接字的通信了。
悬崖边冥思
·
2020-08-13 12:35
linux
lua
skynet
框架 源码分析 三
今天我们来读service_lua.c文件。这个文件很重要,它是模块snlua的源文件,也是各个lua服务节点的制造者。比如:agent服务节点,watchdog服务节点,launch服务节点等。让我们来看看这个制造者是如何运作的。拿agent举例说:gate节点在服务端与新到的客户端连接建立成功之后,会向watchdog服务节点发送一条文本消息,消息内容含有open指令,意在生成两个新的服务节点
悬崖边冥思
·
2020-08-13 12:35
linux
STL
源码剖析
笔记一空间配置器
今天终于开始了计划很久的看STL源码,过程应该很艰巨,我争取书博客各看一遍,为了防止看了就忘,准备做好笔记,在5天内看完。加油!一、空间配置器allocator1.1简介整个STL的操作对象都存放在容器中,而容器一定需要配置空间置放资料。空间不一定是内存,也可以是磁盘或其他辅助媒介。C++的内存配置操作和释放操作一般是这样:classfoo{...}foo*pf=newfoo;//配置内存,然后构
爱吃肉的糖醋排骨
·
2020-08-13 12:16
STL源码剖析笔记
CSCOPE 配置多个目录 索引
我们这里以
skynet
服务器框架为例,在windows中文路径下这么添加是会有问题的,所以目录尽量不要用中文名findE:/
skynet
/service-src/-name'*.c'-o-name'*.
anton8801
·
2020-08-13 11:57
emacs
一起来读书102- stl
源码剖析
:第二章 空间配置器
文件结构:allocator必须定义于:包含以下头文件定义::定义全局函数construct()和destroy(),负责对象的构造和析构:定义一,二级allocator;配置器名为alloc:定义了一些全局函数用来填充和赋值大块内存数据,实现STL标准规范:un_initialized_copy(),un_initialized_fill(),un_initialized_fill_n()空间的
狍子科技-贺汉景
·
2020-08-13 10:34
一起来读书
源码剖析
Springboot自定义异常
博主看到新服务是封装的自定义异常,准备入手剖析一下,自定义的异常是如何进行抓住我们请求的方法的异常,并进行封装返回到。废话不多说,先看看如何才能实现封装异常,先来一个示例:1@ControllerAdvice2publicclassTstExceptionHandle{34@ExceptionHandler(Exception.class)5publicvoidmyExceptionHandle(
努力的小雨
·
2020-08-13 08:00
源码剖析
Springboot自定义异常
博主看到新服务是封装的自定义异常,准备入手剖析一下,自定义的异常是如何进行抓住我们请求的方法的异常,并进行封装返回到。废话不多说,先看看如何才能实现封装异常,先来一个示例:1@ControllerAdvice2publicclassTstExceptionHandle{34@ExceptionHandler(Exception.class)5publicvoidmyExceptionHandle(
努力的小雨
·
2020-08-13 08:00
Vue 2.6
源码剖析
-响应式原理学习 - 1.起手
学习目标Vue.js的静态成员和实例成员初始化过程静态成员如:Vue.use、Vue.set、Vue.nextTick实例成员如:vm.el、vm.el、vm.el、vm.set、vm.$mount首次渲染的过程数据响应式原理准备工作获取源码项目地址:https://github.com/vuejs/vueFork一份到自己的仓库,克隆到本地,可以自己写注释提交到github注意提交的时候要按照规
皮蛋很白
·
2020-08-12 19:50
#
Vue2.6
源码剖析
SpringCloud组件 &
源码剖析
:Eureka服务注册方式流程全面分析
在SpringCloud组件:Eureka服务注册是采用主机名还是IP地址?文章中我们讲到了服务注册的几种注册方式,那么这几种注册方式的源码是怎么实现的呢?我们带着这一个疑问来阅读本章内容能够让你更深入了解这块的知识点!!!本章目标分析每一种服务注册方式源码执行流程。构建项目本章以分析源码为主,所以不去新创建项目来讲解相关内容,我们使用SpringCloud组件:Eureka服务注册是采用主机名还
恒宇少年
·
2020-08-12 16:24
整理:std::sort
源码剖析
从事程序设计行业的朋友一定对排序不陌生,它从我们刚刚接触数据结构课程开始便伴随我们左右,是需要掌握的重要技能。任何一本数据结构的教科书一定会介绍各种各样的排序算法,比如最简单的冒泡排序、插入排序、希尔排序、堆排序等。在现已知的所有排序算法之中,快速排序名如其名,以快速著称,它的平均时间复杂度可以达到O(NlogN),是最快排序算法之一。背景在校期间,为了掌握这些排序算法,我们不得不经常手动实现它们
bat67
·
2020-08-12 16:36
●
C/C++
spring源码分析之----扫描bean定义流程
在这里插入代码片##一、部分
源码剖析
ApplicationListener作用:applicationListener可以监听某个事件event,通过实现这个接口,传入一个泛型事件,在run方法中就可以监听这个事件
追梦QK
·
2020-08-12 14:13
spring
从 Vue 3 源码切入,全面掌握前端编译原理
这首先是一篇
源码剖析
Chat。Vue3.0源码发布一月有余。目前针对Vue3.0的源码分析基本围绕响应式原理展开,鲜有对模板编译原理进行分析的。
蔚1
·
2020-08-12 14:04
Vue2.x
源码剖析
之响应式原理
StudyNotesVue.js
源码剖析
-响应式原理响应式处理的入口src/core/instance/init.jsinitState(vm)vm状态的初始化初始化了_data、_props、methods
白驹过隙时光荏苒
·
2020-08-12 14:24
大前端学习笔记
豌豆夹Redis解决方案Codis
源码剖析
:Proxy代理
豌豆夹Redis解决方案Codis
源码剖析
:Proxy代理1.预备知识1.1CodisCodis就不详细说了,摘抄一下GitHub上的一些项目描述:CodisisaproxybasedhighperformanceRedisclustersolutionwritteninGo
weixin_30342209
·
2020-08-12 13:18
GTest
源码剖析
(四)——TEST_P宏
GTest
源码剖析
——TEST_P宏GTest
源码剖析
TEST_P宏TEST_P宏用法TestWithParam类1TestWithParam类定义2WithParamInterface模版类定义INSTANTIATE_TEST_CASE_P
zhaipillar
·
2020-08-12 10:19
GTest
GTest
源码剖析
(六)——RUN_ALL_TESTS
GTest
源码剖析
——RUN_ALL_TESTSGTest
源码剖析
RUN_ALL_TESTSRUN_ALL_TESTS源码分析1UnitTestRun2HandleExceptionsInMethodIfSupported3UnitTestImplRunAllTests5TestCaseRun6TestCaseRun7TestRun
zhaipillar
·
2020-08-12 10:19
GTest
GTest
源码剖析
(五)——传入参数分析及InitGoogleTest
GTest
源码剖析
——传入参数分析及InitGoogleTestGTest
源码剖析
传入参数分析及InitGoogleTestInitGoogleTest源码分析1InitGoogleTestImpl2ParseGoogleTestFlagsOnly3UnitTestImplPostFlagParsingInit4UnitTestImplConfigureXmlOutput
zhaipillar
·
2020-08-12 10:19
GTest
GTest
源码剖析
(七)——断言
GTest
源码剖析
——断言GTest
源码剖析
断言ASSERT_TRUE宏1ASSERT_TRUE宏和EXPECT_TRUE宏的区别11GTEST_MESSAGE_宏12AssertHelper类2ASSERT_TRUE
zhaipillar
·
2020-08-12 10:19
GTest
GTest
源码剖析
(三)——TEST_F宏
GTest
源码剖析
——TEST_F宏GTest
源码剖析
TEST_F宏TEST_F宏与TEST宏的区别1TEST_F宏定义2TEST宏定义3对比分析31拼接类对比32调用MakeAndRegisterTestInfo
zhaipillar
·
2020-08-12 10:18
GTest
jdk
源码剖析
: 对象内存布局、synchronized原理
正文很多人一提到锁,自然第一个想到了synchronized,但一直不懂源码实现,现特地追踪到C++层来剥开synchronized的面纱。网上的很多描述大都不全,让人看了不够爽,看完本章,你将彻底了解synchronized的核心原理。回到顶部一、启蒙知识预热开启本文之前先介绍2个概念1.1.cas操作为了提高性能,JVM很多操作都依赖CAS实现,一种乐观锁的实现。本文锁优化中大量用到了CAS,
mhHao
·
2020-08-12 01:44
java基础与高级特性
java
多线程并发
【转载】C++机试STL、树、图用法最全总结
简述STL底层说明C++STL的实现:容器实现vector底层数据结构为数组,支持快速随机访问list底层数据结构为双向链表,支持快速增删deque底层数据结构为一个中央控制器和多个缓冲区,详细见STL
源码剖析
或许对了
·
2020-08-11 23:06
STL基础知识
C++基础知识
【Redis
源码剖析
】 - Redis IO操作之rio
原创作品,转载请标明:http://blog.csdn.net/xiejingfa/article/details/51433696Redis
源码剖析
系列文章汇总:传送门Reids内部封装了一个I/O层
Fred^_^
·
2020-08-11 20:29
Redis源码剖析
Linux Socket编程(不限Linux)
LinuxSocket编程(不限Linux)2016-07-12Linux爱好者(点击上方公众号,可快速关注)来源:吴秦链接:http://www.cnblogs.com/
skynet
/archive/
过圆心圈圈圆心
·
2020-08-11 16:21
C语言
PowerPC VxWorks BSP分析(4.3)——BSP定制
1.1
源码剖析
处理器首先跳到ROM的入口地址,设置状态字并创建一个哑堆栈(dummystack)。
weixin_34387284
·
2020-08-11 14:23
Vue
源码剖析
——render、patch、updata、vnode
个人博客如有错误,希望各位留言指点,乐意之极。有点乱,各种方法交错,很难理清顺序,请海涵flow前置在Vue源码里,尤大采用了Flow作为静态类型检查,Flow是facebook出品的静态类型检查工具。为什么要用Flow?众所周知,JavaScript是弱类型的语言。所谓弱类型指的是定义变量时,不需要什么类型,在程序运行过程中会自动判断类型,如果一个语言可以隐式转换它的所有类型,那么它的变量、表达
weixin_34315189
·
2020-08-11 14:46
javascript
runtime
json
STL底层数据结构实现
C++STL的实现:1.vector底层数据结构为数组,支持快速随机访问2.list底层数据结构为双向链表,支持快速增删3.deque底层数据结构为一个中央控制器和多个缓冲区,详细见STL
源码剖析
P146
weixin_30544657
·
2020-08-11 14:50
8.2.1 Vue.js
源码剖析
-响应式原理
本文为拉勾网大前端高薪训练营第一期笔记8.2.1Vue.js
源码剖析
-响应式原理Vuejs2.6https://github.com/vuejs/vueVuejs3.0https://github.com
w1fl1w
·
2020-08-11 13:45
vue.js
vue.js
8.2.3 Vue.js
源码剖析
-模板编译和组件化
本文为拉勾网大前端高薪训练营第一期笔记心得体会从5月14日开始在拉勾网学习大前端高薪训练营,到现在8月6日,不知不觉快三个月了,又找到了过去顶着压力学习的感觉,一天不学就浑身难受,主要是进度赶着人走,再加上交作业的截止日期(虽然只是说早交加分,但是不知不觉还是会有压力)、串讲直播和小雪班主任的敲窗户式提醒,学习效果杠杠的。从学习成果来讲,硕果累累,我之前只看文档不求甚解,这次Vue.js章节的源码
w1fl1w
·
2020-08-11 13:45
vue.js
前端
vue.js
skynet
环境搭建
先将环境下载下来sudoapt-getinstallautoconfsudoapt-getinstalllibreadline-devgitclonehttps://github.com/cloudwu/
skynet
.git1.2
JackReach
·
2020-08-11 13:37
skynet
Vue.js 源码分析-响应式原理
模板编译和组件化)项目见:https://github.com/smallSix6/fed-e-task-liuhuijun/tree/master/fed-e-task-03-02任务一:Vue.js
源码剖析
qq_35469739
·
2020-08-11 12:42
vue
上一页
36
37
38
39
40
41
42
43
下一页
按字母分类:
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
其他