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源码剖析
STL
源码剖析
---shared_ptr
目录一、引言二、代码实现2.1模拟实现shared_ptr2.2测试用例三、潜在问题分析你可能还需要了解模拟实现C++标准库中的auto_ptr一、引言与auto_ptr大同小异,shared_ptr也是一个类。可以实现多个指针指向同一个对象(引用计数)。发生拷贝的话都指向相同的内存。每使用一次,内部引用计数加1;每析构一次,内部引用计数减1,;引用计数减为0时,自动释放原生指针所指向的内存。二、
楚楚可薇
·
2020-07-29 23:22
Libevent
源码剖析
——事件event
Libevent是基于事件驱动(event-driven)的,从名字也可以看到event是整个库的核心。event就是Reactor框架中的事件处理程序组件;它提供了函数接口,供Reactor在事件发生时调用,以执行相应的事件处理,通常它会绑定一个有效的句柄。首先给出event结构体的声明,它位于event.h文件中,我直接给出带注释的代码://一个event管理三种事件,I/O事件,信号事件和定
jollysoul
·
2020-07-29 19:57
Libevent源码剖析
[原创]Swoft
源码剖析
-RPC功能实现
Swoft提供了一个自建RPC(远程方法调用)实现,让你可以方便的调用其他Swoft上的服务。RPC服务端的初始化RPC有两种启动方式Http伴随启动和RPC单独启动。值得一提的是目前swoole的tcp服务即RPC服务,暂没有其他的tcp服务功能,所以基本上tcp相关的配置指代的就是RPC。Http伴随启动swoft的RPC服务在Http服务启动时候伴随启动//Swoft\Http\Server
bromine
·
2020-07-29 16:47
Linux下C语言socket编程
Linux下C语言socket编程转载2014年04月24日18:47:49标签:c语言/linux/网络/socket583原文地址:http://www.cnblogs.com/
skynet
/archive
iiiLISA
·
2020-07-29 15:23
分布式编程
Android AsyncTask
源码剖析
1.导言Android应用在运行时,所有UI相关的操作,必须放在主线程里,子线程(或者称之为工作线程)中如果进行UI操作会抛出异常。Android的UI模型被设计为单线程模型,即所有的UI操作都在同一个线程里(MainThread),这样做的好处,一是实现里边比较简单,不需要考虑线程安全的问题;二是对UI的所有操作都省去了加锁同步(否则会造成视图的不确定性)的过程,提高了效率,使得视图相关的操作都
CyanStone
·
2020-07-29 14:54
大前端学习 -- Vue.js源码分析(响应式、虚拟DOM、模板编译和组件化)-- 总结
Vue.js源码分析(响应式、虚拟DOM、模板编译和组件化)文章内容输出来源:拉勾教育大前端高薪训练营Vue.js
源码剖析
-响应式原理一、准备工作1.Vue源码的获取项目地址:https://github.com
爱玲姐姐
·
2020-07-29 14:22
Vue
大前端
Vue源码分析
Kafka-0.10源码解读
选择写Kafka
源码剖析
的理由1、Kafka是大数据里面难度较大,而且使用广泛的一个技术,倒不是说使用起来难度大,而
中琦2513
·
2020-07-29 13:44
大数据
Kafka
nginx-rtmp模块初始化
rtmp模块初始化
源码剖析
rtmp模块初始化过程主要分为以下几个点:上下文结构初始化、配置项解析、配置项合并、server相关端口设置。
思心
·
2020-07-29 12:03
nginx-rtmp源码剖析
Chrome V8 引擎
源码剖析
ChromeV8引擎
源码剖析
V8https://github.com/v8/v8array&sorthttps://github.com/v8/v8/search?
xgqfrms
·
2020-07-29 12:00
nginx rtmp 直播环境搭建
nginx+rtmphttp://www.cnblogs.com/
skynet
/p/4146083.htmlhttps://obsproject.com/forum/resources/how-to-set-up-your-own-private-rtmp-server-using-nginx
-缘故-
·
2020-07-29 11:17
NGINX
lua
ffmpeg
[原创]Swoft
源码剖析
-连接池
为什么需要引入连接池?对于基于php-fpm的传统php-web应用,包括且不限于Mysql,Redis,RabbitMq,每次请求到来都需要为其新建一套独享的的连接,这直接带来了一些典型问题:连接开销:连接随着http请求到来而新建,随着请求返回而销毁,大量连接新建销毁是对系统资源的浪费。连接数量过高:每一个请求都需要一套自己的连接,系统连接数和并发数会成一个近线性的关系。如果系统并发量达到了1
bromine
·
2020-07-29 11:43
8 Kafka 核心
源码剖析
8Kafka核心
源码剖析
更多干货分布式实战(干货)springcloud实战(干货)mybatis实战(干货)springboot实战(干货)React入门实战(干货)构建中小型互联网企业架构(干货)python
chenshiying007
·
2020-07-29 10:53
【大数据】
【构建高可用架构】
【kafka】
【Java集合
源码剖析
】Hashtable
源码剖析
HashTable
源码剖析
Ha
zwt7790195
·
2020-07-29 03:24
Java集合
libevent
源码剖析
-最小堆实现定时器
Libevent源码下载可以去官网githubLibevent使用堆来管理Timer事件,其key值就是事件的超时时间,源代码位于文件minheap-internal.h中。所有的数据结构书中都有关于堆的详细介绍,向堆中插入、删除元素时间复杂度都是O(lgN),N为堆中元素的个数,而获取最小key值(小根堆)的复杂度为O(1)。堆是一个完全二叉树,基本存储方式是一个数组。看函数名都挺好懂的,只是下
zzz1_1zzz
·
2020-07-29 03:16
libevent
java
源码剖析
: 对象内存布局、JVM锁以及优化
http://www.cnblogs.com/dennyzhangdd/p/6734638.html一、目录1.启蒙知识预热:CAS原理+JVM对象头内存存储结构2.JVM中锁优化:锁粗化、锁消除、偏向锁、轻量级锁、自旋锁。3.总结:偏向锁、轻量级锁,重量级锁的优缺点。二、启蒙知识预热开启本文之前先介绍2个概念2.1.cas操作为了提高性能,JVM很多操作都依赖CAS实现,一种乐观锁的实现。本文锁
zdy0_2004
·
2020-07-29 02:43
java
jvm
Python之json模块
源码剖析
了解一下json序列化解析过程,直接上源码,以下代码是从框架中剥离出来的,可直接跑案例:"""json
源码剖析
"""importreINFINITY=float('inf')ESCAPE=re.compile
hkss
·
2020-07-29 00:16
Python
STL源码阅读——set 源码阅读
侯捷大佬的《STL
源码剖析
》很不错,菜鸡本鸡没有好好看。带着侯捷大佬的名言“源码面前无秘密”,看了一下set的源码,做个简单记录
wx_14678
·
2020-07-29 00:55
C++
Emoji开源项目解读(二)自定义表情
源码剖析
咱们先来看
吴佳峻
·
2020-07-28 23:04
Android应用开源项目解读
Android开源项目解读
面试题总结(三)、《STL
源码剖析
》相关面试题总结
声明:本文主要探讨与STL实现相关的面试题,主要参考侯捷的《STL
源码剖析
》,每一个知识点讨论力求简洁,便于记忆,但讨论深度有限,如要深入研究可点击参考链接,希望对正在找工作的同学有点帮助。
weixin_34050427
·
2020-07-28 18:22
[原创]Swoft
源码剖析
-目录
随着Swoole的持续壮大,这两年基于Swoole的常驻型web框架也渐渐成熟起来。主流的有最易用稳定的es(EasySwoole),分布式和微服务支持最成熟的sd(SwooleDistributed),和往社区化发展的Swoft。Swoft是个很优秀的框架,但由于现阶段Swoft官方文档不全,且网络上也暂无Swoft的学习资料,为了使用该框架,笔者本人也只能基于源码去学习Swoft。同时顺手整理
bromine
·
2020-07-28 18:55
AsyncTask的工作原理(
源码剖析
)
AsyncTask是一种轻量级的异步任务类。它可以在线程池中执行后台任务,然后把执行的进度和最终结果传递给主线程并在主线程中更新UI。在使用AsyncTask时,AsyncTask类必须在主线程中加载,至于为什么,在下面通过源码讲解了AsyncTask的工作原理后你就会明白了。为了分析AsyncTask的工作原理,首先我们从它的execute方法开始,execute方法中又调用了executeOn
12313凯皇
·
2020-07-28 17:21
通读《STL
源码剖析
》之后的一点读书笔记
直接逼入正题。StandardTemplateLibrary简称STL。STL可分为容器(containers)、迭代器(iterators)、空间配置器(allocator)、配接器(adaptors)、算法(algorithms)、仿函数(functors)六个部分。迭代器和泛型编程的思想在这里几乎用到了极致。模板或者泛型编程其实就是算法实现时不指定具体类型,而由调用的时候指定类型,进行特化。
weixin_30492047
·
2020-07-28 16:32
libuv
源码剖析
(四): 高效线程池Threadpool
Introduction在网络编程中,始终都是基于Reactor模型的变种,无论怎么演化,核心组件都包括:Reactor实例(事件注册,注销,通知);多路复用器(由操作系统提供,比如kqueue,select,epoll);事件处理器(handler)以及事件源(linux中这就是描述符)这四个组件.一般,会单独启动一个线程运行Reactor实例来实现真正的异步操作。但是,依赖操作系统提供的系统调
letflyFYF
·
2020-07-28 13:08
thread.start()到底做了什么?
这篇文章作为Thread类
源码剖析
的补充,从一个侧面来看Thread源码。也解答了面试高频问题:“多次start一个线程会怎么样?”
掌控命运
·
2020-07-28 13:11
多线程
React Native 启动流程
源码剖析
源码结构图 "react-native":"^0.58.1","react":"^16.6.3",系统框架图
源码剖析
1、MainApplication 继承Applicatio
BugFree_张瑞
·
2020-07-28 13:33
Android
开发
Runtime
源码剖析
前言学习开发只有两件事是值得做下去的。第一是国外人的书,第二是官方的文档。RuntimeSEL定义///Anopaquetypethatrepresentsamethodselector.typedefstructobjc_selector*SEL;sel_getName///Returnsthenameofthemethodspecifiedbyagivenselector.//通过SEL返回方
lazy_boy_coder
·
2020-07-28 12:05
ARouter类简单介绍
为了详细了解ARouter的原理,先从重要的实现类的
源码剖析
来入手。了解了重要组成类和功能,再从流程上进行分析。
skycnlr
·
2020-07-28 11:32
Android技术
1.初窥Mybatis初始化
引言这篇文章呢,主要是讲Mybtais的两种方式的
源码剖析
:传统方式以及Mapper代理方式,初次探索Mybatis源码,希望大佬勿喷并且指正错误,谢谢!
Willis丶
·
2020-07-28 09:56
Mybatis
C++(STL源码):04---STL源码的下载、源码目录结构
一、STL源码的下载下载地址1:https://download.csdn.net/download/qq_41453285/12032659这个网址中的源码为SGLSTL版本,侯捷老先生的《STL
源码剖析
江南、董少
·
2020-07-28 08:32
C++(STL源码)
源码剖析
,始于足下
一直有打算阅读源码,剖析开源软件的打算,一直没有做下去。这次在生活压力之下,再次尝试阅读源码,剖析源码,把自己的笔记整理出来,出版成专栏。一来,提高自己的能力,二来,如果有其他朋友也想要学习,可以一起交流,三,能赚一些赞赏最好不过了。打算的步骤是这样的:按照网上一份《值得推荐的C/C++框架和库》,同时结合自己是做数据库相关工作,因此打算按照下面的思路来阅读源码:1、memcached:memca
i4oolish
·
2020-07-28 07:00
Java多线程(11)——ThreadLocal
源码剖析
目录1.概述2.图解+源码分析ThreadLocal原理2.1Thread类的两个ThreadLocalMap类型的参数2.2ThreadLocalMap详解(1)成员变量与内部类(2)构造方法(3)获取前一个/后一个索引的方法和设置扩容阈值的方法(4)getEntry方法(5)ThreadLocal的内存泄露(6)set(7)remove2.3ThreadLocal详解(1)get()和set(
喵的波波鱼
·
2020-07-28 07:53
#
Java多线程
Java多线程(13)——Thread类的
源码剖析
待更新补充1.Thread与RunnableThread类中继承了接口Runnable的同时组合了Runnbale所以我们可以将一个Thread的子类的任务交给另一个Thread去执行packageThread;publicclassThreadDemo{publicstaticvoidmain(String[]args){Threadt1=newThread(()->{System.out.pr
喵的波波鱼
·
2020-07-28 07:21
#
Java多线程
Java多线程(12)——ThreadLocalRandom
源码剖析
目录1.为什么JUC下要新增ThreadLocalRandom?2.ThreadLocalRandom2.1ThreadLocalRandom使用示例2.2ThreadLocalRandom的源码分析1.为什么JUC下要新增ThreadLocalRandom?在jdk1.7之前,java.util.Random是使用比较广泛的随机数生成工具类,我们先来看个Random的案例:packageThre
喵的波波鱼
·
2020-07-28 07:21
#
Java多线程
STL——list and vector
这里我主要针对侯捷老师讲解的STL
源码剖析
进行总结。
Jackybored
·
2020-07-28 06:32
STL源码解析
【JDK
源码剖析
】java.util.Calendar
点击查看JDK
源码剖析
系列目录Calendar介绍获取实例方式常用函数一、Calendar介绍Calendar类是一个日历抽象类,提供了一组对年月日时分秒星期等日期信息的操作的函数,并针对不同国家和地区的日历提供了相应的子类
黄嘉成
·
2020-07-28 06:13
JDK源码剖析
C++,java,Python的sort排序内部实现
C++C++内部的sort是由快排,直接插入和堆排序混合的,具体详情见STL
源码剖析
。
Zhang_Raymond
·
2020-07-28 05:08
python
AbstractQueuedSynchronizer
源码剖析
(四)- 不响应中断的共享锁
1、AbstactQueuedSynchronizer的基本数据结构AbstractQueuedSynchronizer是并发类的重中之重,我会细分很多章节来解析。本篇博客主要分析AQS中的不响应中断的独占锁。(1).AbstactQueuedSynchronizer的基本数据结构AQS的基本数据结构为Node,关于Node,JDK作者写了详细的注释,这里我大致总结几点:1.1AbstractQu
pfnie
·
2020-07-28 04:35
AQS与同步工具类源码解析
C++,java,Python的内部实现sort怎么实现的,有什么不同?
C++内部的sort是由快排,直接插入和堆排序混合的,具体详情见STL
源码剖析
,当数据量比较大的时候先用的快排,当数据量小的时候用直接插入,因为当数据量变小时,快排中的每个部分基本有序,接近直接插入的最好情况的时间复杂度
liusarazhang
·
2020-07-28 02:07
面试题
STL
源码剖析
[容器](六)[stl_queue.h]
queue模板类的定义在头文件中。与stack模板类很相似,queue模板类也需要两个模板参数,一个是元素类型,一个容器类型,元素类型是必要的,容器类型是可选的,默认为deque类型。定义queue对象的示例代码如下:queueq1;queueq2;queue的基本操作有:入队,如例:q.push(x);将x接到队列的末端。出队,如例:q.pop();弹出队列的第一个元素,注意,并不会返回被弹
langb2014
·
2020-07-28 01:14
C++(STL)
C/C++
android MotionEvent中getX()和getRawX()的区别
www.cnblogs.com/foura/articles/2016881.htmlhttp://www.eoeandroid.com/thread-6346-1-1.htmlhttp://www.cnblogs.com/
skynet
fa1d1
·
2020-07-27 23:33
android触摸滑动系列
《STL
源码剖析
》读书笔记(四)
空间配置器allocator空间配置器allocator概览精细分工双层级配置器相关问题在STL中,所有的元素都是存放在容器中,容器需要配置空间来储存这些数值,因此需要用到空间配置器。概览SGI的空间配置器SGI标准的空间配置器是allocator,只是对基层内存配置/释放行为(对运算符new/delete)进行了一层薄薄的封装,没有考虑到效率上的优化。SGI特殊的空间配置器是alloc,SGI以
_yannnnn
·
2020-07-27 23:06
c++总结
《STL
源码剖析
》读书笔记(一)
本文为阅读《STL
源码剖析
》所作的读书笔记,仅供自己学习备份。STL设计的目的建立数据结构和算法的一套标准,并且降低期间的耦合关系以提升各自的独立性、弹性、交互操作性。
_yannnnn
·
2020-07-27 23:35
c++总结
[Boot]Android系统启动-综述
基于Android6.0的
源码剖析
,Android启动过程概述一.概述Android系统底层基于LinuxKernel,当Kernel启动过程会创建init进程,该进程是所有用户空间的鼻祖,init进程会启动
Letcos
·
2020-07-27 22:41
STL
源码剖析
笔记之六 算法
第六章算法algorithms(这章这里先粗略读过,大体看懂源码就过,不会深究每个算法的实现细节,回头再去研究数据结构与算法设计这本)以有限的步骤,解决逻辑或数学上的问题,我们称为算法。特定的算法往往搭配特定的数据结构。特定的数据结构是为了实现某种特定的算法。决定算法所耗用的资源,包括空间和时间,这个操作称为算法分析。STL算法总览质变算法,是指运算过程中会更改区间内元素的内容的算法。比如,拷贝,
cooljuly
·
2020-07-27 20:36
3.STL及内存管理
10本 Linux PDF 书籍免费分享
程序设计二、Unix环境高级编程三、Unix_Linux编程实践教程四、鸟哥的私房菜五、深入理解Linux内核六、Linux命令行与shell脚本编程大全七、Linux内核设计与实现八、ARM_Linux内核
源码剖析
九
anpaikan3027
·
2020-07-27 19:49
Spring
源码剖析
5:JDK和cglib动态代理原理详解
AOP的基础是Java动态代理,了解和使用两种动态代理能让我们更好地理解AOP,在讲解AOP之前,让我们先来看看Java动态代理的使用方式以及底层实现原理。转自https://www.jianshu.com/u/668d0795a95b本文是基于jdk1.8来对动态代理的底层机制进行探究的Java中代理的实现一般分为三种:JDK静态代理、JDK动态代理以及CGLIB动态代理。在Spring的AOP
黄小斜
·
2020-07-27 18:26
Spring
spark 内核
源码剖析
二:宽依赖与窄依赖
窄依赖:NarrowDependency,是指,一个RDD对它的父RDD,只有简单的一对一的依赖关系。也就是说,RDD的每个Partition,仅仅依赖于父RDD的一个partition,父RDD和子RDD的partition之间的对应关系,是一对一的;宽依赖:ShuffleDependency,本质就是Shuffle;也就是说,每一个父RDD的partition中的数据,都可能会传输一部分到下一
张凯_9908
·
2020-07-27 18:48
基于Golang的游戏服务器框架cellnet开发日记(二)
看官们肯定还有大部分不是很熟悉Actor模型.我这里基于Erlang,
Skynet
等语言和框架库来实战型解释下Actor模型.Actor概念Actor模型和OO类似,都是符合人的思维模式进行编码.OO里啥都是类
Teeth1017
·
2020-07-27 17:34
快手技术官kafka学习使用归纳——Kafka
源码剖析
实战文档
这是一个数据大爆炸的时代,互联网成为了数据传播的主要载体。大数据处理平台在现代化的互联网公司进行商业决策、规划发展、市场拓展等方面扮演着越来越重要的角色。Kafka作为大数据平台的重要组件之一,受到越来越多的设计人员和开发人员的青睐,Kafka的社区也变得越来越活跃,Kafka本身的架构设计、应用场景也得到了长足的发展。Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和J
Sqdmn
·
2020-07-27 17:57
程序员
STL空间配置器的union obj
最近学习《STL
源码剖析
》一书,看到SGI的第二级配置器时,空闲内存链表使用了一个神奇的联合体(union)结构,代码如下:[cpp]viewplaincopyunionobj{unionobj*free_list_link
LaoJiu_
·
2020-07-27 16:08
C++
上一页
41
42
43
44
45
46
47
48
下一页
按字母分类:
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
其他