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源码剖析
【Linux深入】epoll
源码剖析
引入之前讲了select、poll、epoll的区别,由于许多应用中都用到了epoll,例如Netty、Redis等等,所以就来深入学习一下,现在我们就来剖析一下epoll的源码我先来剖析理解epoll源码的基础:主要的数据结构,然后再来解析epoll主要的三个方法:epoll_create()、epoll_ctl()、epoll_wait()。主要的数据结构1.eventpoll//epoll的
白夜行515
·
2020-08-08 14:34
Linux
epoll
源码
数据结构
STL
源码剖析
阅读笔记--线性容器(1)
好久好久么写了,看的书不少却很难落实记录下来,难得浮生半日闲,实验室项目暂告一段,最近阿里和中行面试终于基本完了,终于可以再捧起侯捷大神的STL,Mark一下,督促自己多书多记录,希望2019自己能在项目,毕设和找工作之间游刃有余。目录语法两则:语法:1、临时对象的产生—一种无名对象,不在程序预期之下(passerbyvalue会产生临时对象,负担)2、静态常量整数成员在class内部可直接初始化
进击ing小白
·
2020-08-08 13:05
STL
c++语言
Redis
源码剖析
——字符串对象
字符串对象字符串对象有三种编码方式,int、raw、embstrint编码的字符串对象对于int编码的字符串对象,为了节省内存,int将会占用ptr的空间,布局如图raw编码的字符串对象当字符串值的长度大于39字节时,字符串对象将用SDS来保存字符串值如使用SETstory“Long,long,longagotherelivedaking…”命令后,字符串对象作为story键的值,布局如图embs
Coding_Reading
·
2020-08-08 13:20
Redis源码剖析
Linux epoll源码注释
Linux系统运行
源码剖析
-epoll代码注释理解了中断、等待队列、调度,你就能懂Linux的80%。
weixin_33736832
·
2020-08-08 11:46
cocos2d-x
源码剖析
(16)
上一节讲了CCImage,这节讲CCTexture。毕竟我们就是从CCTexture讲岔到CCImage的。CCTexture负责纹理的加载和维护。他的函数分为三部分:初始化函数加载函数管理函数我们先来看加载函数,这是CCTexture的根本所在:boolCCTexture2D::initWithData(constvoid*data,CCTexture2DPixelFormatpixelForm
进击的大头
·
2020-08-08 11:09
cocos2d-x
学习笔记
Python
源码剖析
-深度探索动态语言核心技术.PDF 电子书下载
不关我的事,我是从python核心编程过来打酱油的...内容简介:作为主流的动态语言,Python不仅简单易学、移植性好,而且拥有强大丰富的库的支持。此外,Python强大的可扩展性,让开发人员既可以非常容易地利用C/C++编写Python的扩展模块,还能将Python嵌入到C/C++程序中,为自己的系统添加动态扩展和动态编程的能力。为了更好地利用Python语言,无论是使用Python语言本身,
zggxjxcgx1
·
2020-08-08 02:04
Python
&
Pys60
std::string
源码剖析
(1) 体系结构
引言一直以来广大C++使用者对标准库中std::string褒贬不一,笔者整理了一下,大致是以下几点不支持一些常用功能,例如format有algorithm的情况下.basic_string支持的功能太多,过于冗余,缺少编码信息,对于宽字节等有其它的容器,比如wstring,u16string,u32string.不少地方效率不够比起字符串更应该叫字节串,它并不像其他语言一样只读的(string_
一个划水的人
·
2020-08-08 02:23
c++语法
《Python
源码剖析
》读书笔记(总)
原来在大三的时候就已经认识了Python,一直以来都被他的简易性和开发效率所折服,可惜一直以来都没有机会在工作中用到它,不过现在我自己终于也是采用Python进行工作,一直以来的愿望终于都实现了,不过Python内部到底是怎么工作的呢?如何能够实现这么动态的功能呢?要了解具体的实现,就需要去看Python的源码了,还好这么优秀的语言是开源的,所以我们可以有机会一窥他的真面目了。不过我的C语言功底很
sislcb
·
2020-08-08 02:33
python
Python
源码剖析
----深度探索动态语言核心技术读书笔记
python类型对象python中对象通用的部分有共同的定义但是还要知道在内存中分配的空间,存储这数据的信息在哪呢?在pyobject中没有这样的信息,其实这种说法是不对的,这个信息虽然不显见与pyobject中,但是隐身于pyobject中,占用内存空间的大小是对象的元信息,这种元信息与对象所属的类型密切相关在typeobject的定义中包含了许多的信息,主要分为4类类型名:tp_name创建对
CHR_YTU
·
2020-08-08 02:19
《python
源码剖析
之一》——python总体架构
左边是python提供的大量的模块、库及用户自定义的模块。右边是python的运行时环境,包括对象/类型系统(object/TypeStructures)、内存分配器(MemoryAllocation)和运行时状态(currentStateofPython).运行时状态:维护了解释器在执行字节码时在不同状态之间的切换动作。内存分配器:全权负责python中创建对象是内存的申请工作。对象类型系统:包
风瑟
·
2020-08-08 01:44
python基础学习
《python
源码剖析
》 读后总结(虚拟机综述)
我是研究过jvm所以在读这本书的时候总是先关注python的虚拟机。关注python的虚拟机,首先你要先了解.py文件编译之后,在python虚拟机中是什么的结构;换句话说,要知道pyc二进制文件字节码的格式,文件魔术、字符表、字符串,常量,模块信息、字节码、方法和变量等信息。然后pyc在虚拟机中执行时候,创建的对象信息是什么样的,即pyCodeObject.如图:图中的pyCodeObject包
lxlmycsdnfree
·
2020-08-08 01:18
书单(读后感)
Python
源码剖析
——深度探索动态语言核心技术
http://book.csdn.net/bookfiles/749/10074922948.shtmlPython
源码剖析
——深度探索动态语言核心技术8.3PYTHON虚拟机的运行框架http://book.csdn.net
skyremember
·
2020-08-08 01:58
【java集合框架
源码剖析
系列】java
源码剖析
之TreeSet
本博客将从源码的角度带领大家学习TreeSet相关的知识。一TreeSet类的定义:publicclassTreeSetextendsAbstractSetimplementsNavigableSet,Cloneable,java.io.Serializable可以看到TreeSet是继承自AbstracSet同时实现了NavigableSet,Cloneable,Serializable三个接口
weixin_33716557
·
2020-08-08 01:27
_Obj* __STL_VOLATILE* __my_free_list
今天在读《STL
源码剖析
》空间配置器第二级时看到了这句,有点不解,于是查阅后知:obj后面是个指针STL_VOLATILE也应该是个类型定义的吧,程序中应该有define来对它定义。
weixin_30640291
·
2020-08-08 00:10
Flink
源码剖析
:Flink Async I/O的三种模式
文章目录1.维表join2.richmapfunction2.1示例3.asyncio3.1示例3.2Ordered模式3.2.1生产3.2.2消费3.3基于processtime的unordered模式3.3.1生产3.3.2消费3.4基于eventTime的unordered模式3.4.1生产3.4.2消费4.总结1.维表join流计算系统中经常需要与外部系统进行交互,比如需要查询外部数据库以
daijiguo
·
2020-08-07 23:59
Flink
sqlite
源码剖析
(一)
首先,我看完整个目录结构之后,我打算从sqlite的数据结构开始看起。hash.h中定义了两个数据结构,Hash类包含以下成员structHash{charkeyClass;/*指示该hash是针对哪种基本类型而设置的,其设定4种SQLITE_HASH_INT,_POINTER,_STRING,_BINARY*/charcopyKey;/*判断每个元素是否需要深复制,如pointer类型、bina
sysu_zjl
·
2020-08-07 22:22
数据库
skynet
源码分析:模块
skynet
各层表现
skynet
重要模块和服务gate.so:为整个
skynet
提供socket功能snlua.so:启动多个lua服务
skynet
自带的模块中有一个重要的模块是snlua.so模块,通过
Kevin_Leong
·
2020-08-07 15:12
STL
源码剖析
deque实现源码
#ifndef_HJSTL_DEQUE_H_#define_HJSTL_DEQUE_H_/**Author:hujian*Time:2016/4/28*discription:thisfileisaboutdequestructure.**/#include"hjstl_alloc.h"#include"hjstl_construct.h"#include"hjstl_iterator.h"#in
pandening
·
2020-08-07 14:34
STL
src
code
c/c++
STL
源码剖析
Sensor系列之aDSP端Sensor Driver流程
本系列导航:Android简单的计步器应用实现AndroidNative到HAL
源码剖析
,以sensor为例AndroidSensorHAL层初始化流程(基于Qualcomm平台)Sensor系列之SensorHAL
剥皮包子
·
2020-08-07 14:33
android
driver
Android
Sensor架构全解析
Android 使用ViewPager实现图片左右滑动和PhotoView浏览大图
PhotoView的详解,请参考PhotoView
源码剖析
2.上Demo源码:ViewPage
lqfang_
·
2020-08-07 13:18
Android
【
源码剖析
2】framework 源码 4——UserController之多用户的切换流程(上)
上文提到创建用户之后,需要通过切换用户来抵达用户。细心的朋友会发现标题从UserManagerService变成了UserController。这是因为切换的代码主要在UserController实现,有意思的是,切换的入口也不是在UserManager而是在ActivityManagerService。ActivityManager.getService().switchUser(userId)
帝求仁
·
2020-08-07 13:19
源码剖析
【
源码剖析
2】framework 源码 6——UserController之多用户的切换(下)
本章直接从UserController的方法moveUserToForeground讲起,就分析多用户切换的时候,如何启动的新用户里面的那个应用。此方法进行了一个判断,该判断最终走向两个分支方法:startHomeActivity和stackSupervisorResumeFocusedStackTopActivity。什么意思呢,就是说切换用户的是,启动用户有两种情况:前者是启动默认应用,默认应
帝求仁
·
2020-08-07 13:19
源码剖析
【
源码剖析
2】framework 源码 3——UserManagerService之多用户的创建代码详解
上文提到创建用户的方法:核心代码是createUserInternalUnchecked在此方法中要完成一个用户的创建。首先是通过flag区分需要创建用户的类型,然后不同类型在信息的使用上会有不同差别。总的来说,创建时兼顾了各种类型的user,并且给新用户提供userId和UserInfo两个重要参数。需要注意的是,创建用户并不会使用户显示出来。要显示用户是通过多用户切换功能完成。我们平常一创建多
帝求仁
·
2020-08-07 13:19
源码剖析
【
源码剖析
2】framework 源码 5——UserController之多用户的切换流程(中)
上一章讲解了,第三方app要切换用户ActivityManagerService的SwtichUser方法最终走到切换用户的最关键方法:UserController里面的startUser方法。前面叫做切换用户,而当前这一步这叫做启动新用户。其实切换到新用户就是启动新用户的过程。本章将详细讲解startUser方法。booleanstartUser(finalintuserId,finalbool
帝求仁
·
2020-08-07 13:19
源码剖析
【
源码剖析
】Launcher 8.0 源码 (20) --- Launcher 启动流程 第六步之BindWorkspace 第2小步添加图标
Launcher8.0启动流程的第六步startLoader的bindWorkspace将sBgDataModel中的图标放到桌面上。放置的时候为了提高用户体验,优先放置当前屏幕的图标和widget,然后再放其他屏幕的图标,这样用户能更快的看到图标显示完成。在创建完屏幕后,添加桌面的图标进入bindWorkspaceItems()方法//绑定图标是回调Launcher的对应方法,而绑定时按照不同i
帝求仁
·
2020-08-07 13:48
源码剖析
【
源码剖析
】Launcher 8.0 源码 (2) --- Launcher 启动流程 第一步(1)之LauncherAppState 对象创建简述
从综述将启动流程拆分成7步,其中第一步,重点是通过手机的硬件来获取信息。关于第一步在oncreate中的源码如下:@OverrideprotectedvoidonCreate(BundlesavedInstanceState){if(mLauncherCallbacks!=null){mLauncherCallbacks.preOnCreate();}super.onCreate(savedIns
帝求仁
·
2020-08-07 13:48
源码剖析
【
源码剖析
】Launcher 8.0 源码 (14) --- Launcher 启动流程 第六步之LoadWorkspace 第1小步(2)寻找布局xml的范围
Launcher8.0启动流程的第六步中loadworkspace的第1小步是获取数据库,首先完成第一个操作,判断有没有现成的数据库,如果没有现成数据库,则创建一个新的数据库,并且从手机中读取相应的布局。也就是第1小步的第二个操作,寻找布局文件的范围。loadDefaultFavoritesIfNecessary其源码如下:synchronizedprivatevoidloadDefaultFav
帝求仁
·
2020-08-07 13:48
源码剖析
【
源码剖析
】Launcher 8.0 源码 (23) --- Launcher 启动流程 第七步(结束)
第六步完成后,Launcher基本就结束了。Launcher8.0启动流程的第七步横屏和callback等最后的善后工作接下来是第七步:横屏和callback。if(!mRotationEnabled){mRotationEnabled=Utilities.isAllowRotationPrefEnabled(getApplicationContext());mRotationPrefChange
帝求仁
·
2020-08-07 13:48
源码剖析
【
源码剖析
】Launcher 8.0 源码 (12) --- Launcher 启动流程 第六步之简述
Launcher8.0启动流程的第六步生成布局,Launcher启动流程中最重要,最复杂,也是网上各种关于Launcher讲解的最浓墨淡彩描述的部分。第六步onCreate中源码如下:if(!mModel.startLoader(currentScreen)){mDragLayer.setAlpha(0);}else{mWorkspace.setCurrentPage(currentScreen)
帝求仁
·
2020-08-07 13:48
源码剖析
设计模式:04-适配器模式 / 桥接模式 / 装饰者模式
类适配器模式应用实例7.2对象适配器模式7.2.1类适配器模式应用实例7.3接口适配器模式(方法级别,又叫缺省适配器模式)7.3.1接口适配器模式应用实例7.4适配器模式在SpringMVC框架应用的
源码剖析
IT加载中
·
2020-08-07 11:39
设计模式
Java集合框架详解之继承set接口
近阶段先是整理整体的知识点,一些接口,一些继承类以及它们的特性,用法,后续还会有一些常用的,比较重要的类的jdk
源码剖析
。
JasonZhangOO
·
2020-08-07 11:34
【
源码剖析
】Launcher 8.0 源码 (19) --- Launcher 启动流程 第六步之BindWorkspace 第1小步创建屏幕
Launcher8.0启动流程的第六步startLoader的第一步Loadworkspace完成,接着是第二步bindworkspace。这一步将sBgDataModel中的图标放到桌面上。放置的时候需要先创建屏幕而后才能将图标放到屏幕里。源码如下:privatevoidbindWorkspace(intsynchronizeBindPage){finallongt=SystemClock.up
帝求仁
·
2020-08-07 10:02
源码剖析
【
源码剖析
】Launcher 8.0 源码 (8) --- Launcher 启动流程 第四步之桌面布局简述和第1小步部分模块创建
Launcher8.0启动流程的第四步,生成桌面分布局。将UI布局的各个模块,进行基本创建,定义和绑定操作事件等。在oncreate里面就是一个方法:setupViews()主要涉及的模块是DragLayer、Workspace、Qsb、Hotseat、OverviewPanel、AppsView、WidgetsView、DropTargetBar。这几乎涵盖了桌面能够显示的所有UI。其源码如下:
帝求仁
·
2020-08-07 10:01
源码剖析
iBATIS框架
源码剖析
iBATIS框架
源码剖析
基本信息作者:任钢出版社:电子工业出版社ISBN:9787121108723上架时间:2010-7-2出版日期:2010年6月开本:16开页码:510更多详细信息请查看:http
iteye_3691
·
2020-08-06 10:34
Android拖动条(SeekBar)简单
源码剖析
写在开始之前在Android的色彩处理中,我们通常用三个角度来描述一个图像:色调:图像的颜色饱和度:颜色的纯度,从0(灰)到100%(饱和)来进行描述亮度:颜色的相对明暗程度在上面三个属性中,饱和度和亮度为0会使得图片看起来是纯黑色。(记住这一点)本篇源码分析的原因就是来自这个问题。正文在Android开发的过程中,大家有可能都使用过SeekBar这个控件,比如拖动视频进度条、音频进度条等。不管大
葛糖糖
·
2020-08-05 21:26
Android
Android
控件
go实现一个简单的游戏服务器框架(lotou)起源
最近一直想学习一些关于游戏服务器的知识,显示看了一下云风的
skynet
框架,从而对于一个游戏服务器框架有了一个基本概要了解。先来说说我对于
skynet
的一些理解吧。
sydnash
·
2020-08-05 20:58
go
【系统之音】WindowManager工作机制
源码剖析
前言转载请声明,转自【https://www.cnblogs.com/andy-songwei/p/9965714.html】,多谢!目光所及,皆有Window!Window,顾名思义,窗口,它是应用与用户交互的一个窗口,我们所见到视图,都对应着一个Window。比如屏幕上方的状态栏、下方的导航栏、按音量键调出来音量控制栏、充电时的充电界面、屏幕中间的应用显示区域(Activity)、Dialog
宋者为王
·
2020-08-05 19:00
Spring Cloud 微服务开发:入门、进阶与
源码剖析
—— 6.5 Spring Cloud Zuul 灰度发布
6.5SpringCloudZuul灰度发布6.5.1灰度发布概述灰度发布,又有人称金丝雀发布,金丝雀发布这个名称起源于17世纪,17世纪,英国矿井工人发现,金丝雀对瓦斯这种气体十分敏感。空气中哪怕有极其微量的瓦斯,金丝雀也会停止歌唱;而当瓦斯含量超过一定限度时,虽然鲁钝的人类毫无察觉,金丝雀却早已毒发身亡。当时在采矿设备相对简陋的条件下,工人们每次下井都会带上一只金丝雀作为“瓦斯检测指标”,以便
极客挖掘机
·
2020-08-05 16:06
Spring
Cloud
微服务开发:入门
进阶与源码剖析
Spring Cloud 微服务开发:入门、进阶与
源码剖析
—— 7.1 基础框架
7.1基础框架前面的章节分别介绍了一些SpringCloud的常用组件和常用功能,这一章会把这些组件组合起来搭建一个简单的基础综合框架。其中使用的SpringCloud组件将会包含Eureka、Ribbon、Zuul、Hystrix和Turbine,完成用户登录后查询个人信息的小服务,提供几个简单的接口来实现这功能。框架整体采用前后端分离的架构,前端可以使用Vue或者其他框架都可以,本章只实现后端
极客挖掘机
·
2020-08-05 16:06
Spring
Cloud
微服务开发:入门
进阶与源码剖析
Spring Cloud 微服务开发:入门、进阶与
源码剖析
—— 2.2 Spring Cloud Eureka 进阶
2.2SpringCloudEureka进阶上面一节介绍了服务发现以及Eureka的由来,同时展示了Eureka的最基础的搭建以及使用,包括EurekaServer和EurekaClient。还介绍了Eureka对于非Java应用提供的RESTAPI。本节将介绍Eureka的进阶内容,包括源码的分析、设计思想以及参数调优。建议各位读者打开IDE工具一起阅读源码。2.2.1EurekaClient源
极客挖掘机
·
2020-08-05 16:34
Spring
Cloud
微服务开发:入门
进阶与源码剖析
Spring Cloud 微服务开发:入门、进阶与
源码剖析
—— 2.1 Spring Cloud Eureka 入门
第二章SpringCloudEurekaNetflixEureka是Netflix开源的一款基于REST提供服务注册和发现的产品,它提供了完整的ServiceRegistry和ServiceDiscovery实现。从2012年9月再Github上发布1.1.2版本依赖,目前已经发布了239个Release版本,目前最新版本是2019年6月14日发布的v1.9.12版本。期间Netflix也有进行2
极客挖掘机
·
2020-08-05 16:34
Spring
Cloud
微服务开发:入门
进阶与源码剖析
Java锁-Synchronized深层剖析
如果希望非常详细地了解非常底层的信息,如monitor
源码剖析
,SpinLock,TicketLock,CLHLock等自旋锁的实现,也不建议看下去,因为本文也没有说得那么深入。本文只是按
血夜之末
·
2020-08-05 16:46
Java原理
next_permutation原理剖析
感觉挺有意思的一个题目,递归的方法是较简单并且容易想到的,在网上搜了其余的解法,就是std::next_permutation非递归解法,但是让人不是很舒服的就是关于原理的部分,千篇一律的都是摘抄《STL
源码剖析
coderchenjingui
·
2020-08-05 12:36
algorithm
存储型与dom型原理
因为存储型XSS的代码存在于网页的代码中,可以说是永久型的)2.
源码剖析
这里直接贴出php源码存储型XSS输入你的ID:输入你的Name:";$sql="select*fr
YoungBoy啊啊啊
·
2020-08-05 10:33
web安全
多线程之ReentrantLock
源码剖析
ReentrantLock和synchronized一样是可重入锁。可重入锁,也叫做递归锁。指的是同一线程外层函数获得锁之后,内层递归函数仍然有获取该锁的代码,但不受影响。其最大作用是不会产生死锁。ReentrantLock与synchronized的区别与synchronized相比,ReentrantLock提供了更多,更加全面的功能,具备更强的扩展性。例如:时间锁等候,可中断锁等候,锁投票。
爱打乒乓的程序员
·
2020-08-05 10:10
udhcp
源码剖析
(一)——DHCP服务器和客户端的工作流程
DHCP服务器的工作流程udhcpd,即dhcp服务器,在路由器等网关设备中,DHCP服务器启动后用于给LAN侧和无线终端分配IP、租约和其他网络配置。根据RFC2131文档规范,一个标准的DHCP服务器和客户端的交互时序如下,这是一个完整的交互过程,从INIT到BOUND,其余的交互过程,比如INIT_REBOOT、RENEWING和REBINDING都可视作该过程的简化或一部分。DHCP客户端
who538592
·
2020-08-05 03:53
linux
通讯协议
C语言
Java基础类型
源码剖析
系列--Number类
如果你查看基础(数值)类型(byte,short,int,long,float,double)对应的wrapper类的话,你会发现它们的类声明非常的相似:publicfinalclassDoubleextendsNumberimplementsComparable{publicfinalclassIntegerextendsNumberimplementsComparable{而且从wrapper
zhangzhetaojj
·
2020-08-04 22:43
Java
陆军中的AI与自主机器人,是这样的
电影《终结者》可以说是人们对于AI恐惧之情的典型具象体现,其中的天网(
Skynet
)——以计算机为基础的人工智能防御系统,被影片称为“基于人工神经网络的集体意识与人工通用型超智能系统”。
小几斤
·
2020-08-04 20:47
AI;机器人;
计算机系应届生找C/C++工作参考书籍及经验(博主已拿腾讯offer)
《STL
源码剖析
》:重点看。6.《剑指offer》:重点看,里面有很多算法问的频率比较高。7.《王道程序员求职宝典》:重点看,里面有很多基础知识也常问到。
二叉树
·
2020-08-04 18:19
面试经验
C++ STL : SGI-STL空间配置器
源码剖析
文章目录空间配置器的概念SGI-STL空间配置器一级空间配置器二级空间配置器申请空间补充内存块从内存池中索要空间空间回收内存碎片外碎片内碎片空间配置器的再次封装空间配置器的概念空间配置器,顾名思义就是为各个容器高效的管理空间(空间的申请与回收)的,在默默地工作。在之前所有模拟实现的容器中,对于空间的管理都是通过直接调用new和delete来进行的,虽然代码可以正常运行,但是还是存在着大量的缺点。空
凌桓丶
·
2020-08-04 16:50
STL
内存管理
c++
STL
空间配置器
内存池
上一页
38
39
40
41
42
43
44
45
下一页
按字母分类:
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
其他