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
Muduo源代码分析
[
Muduo
网络库源码分析] (6) base/Mutex.h_互斥锁操作
互斥锁操作功能:封装对互斥锁的操作知识点:MCHECK()宏的实现#defineMCHECK(ret)({__typeof__(ret)errnum=(ret);\if(__builtin_expect(errnum!=0,0))\__assert_perror_fail(errnum,__FILE__,__LINE__,__func__);})线程与锁的对应关系用途:可用于多线程互斥锁的操作亮点
chudongfang2015
·
2017-07-31 09:32
Muduo网络库
Muduo网络库源码分析与实践
[
Muduo
网络库源码分析] (1) base/Atomic.h_原子操作与原子整数
原子操作与原子整数前言:C/C++中数值操作,如自加(n++)自减(n–-)及赋值(n=2)操作都不是原子操作,如果是多线程程序需要使用全局计数器,程序就需要使用锁或者互斥量,对于较高并发的程序,会造成一定的性能瓶颈。为了提高赋值操作的效率,gcc提供了一组api,通过汇编级别的代码来保证赋值类操作的原子性,相对于涉及到操作系统系统调用和应用层同步的锁和互斥量,这组api的效率要高很多。类名:mu
chudongfang2015
·
2017-07-31 09:27
Muduo网络库
Muduo网络库源码分析与实践
12
muduo
_base库源码分析(三)
1.Exception类实现(1)backtrace,栈回溯,保存各个栈帧的地址(2)backtrace_symbols,根据地址,转成相应的函数符号(3)abi::__cxa_demangle2.代码Exception.h//UseofthissourcecodeisgovernedbyaBSD-stylelicense//thatcanbefoundintheLicensefile.////A
INGNIGHT
·
2017-07-30 15:43
muduo大并发服务器
muduo
源码分析之Acceptor
ClassAcceptor:用于accept一个TCP连接,并通过回调函数通知使用者。accept接受成功后通知TCP连接的使用者,Acceptor主要是供TcpServer使用的,其生命期由后者控制,一个Acceptor相当于持有服务端的一个socket描述符,该socket可以accept多个Tcp客户端连接。Acceptor在构造时候会创建一个socket描述符--acceptSocket_
Cassie_Yan
·
2017-07-22 20:47
muduo源码分析
Dubbo
源代码分析
七:使用executes属性的一个问题
我们知道,在Dubbo中可以给Provider配置线程池大小来控制系统提供服务的最大并行度,默认是200个,如果我们想配置成500,可以如下配置:当我们想限制某个dubbo服务使用的最大线程数量时,dubbo提供了executes这一属性来提供这个功能,比如我们想限制某个接口最大能同时使用线程池中的100个线程,我们可以如下配置:我们看下dubbo内部executes是如何实现的,这就得移步到Ex
大步流星Java
·
2017-07-22 12:39
dubbo
Dubbo
源代码分析
七:使用executes属性的一个问题
阅读更多我们知道,在Dubbo中可以给Provider配置线程池大小来控制系统提供服务的最大并行度,默认是200个,如果我们想配置成500,可以如下配置:当我们想限制某个dubbo服务使用的最大线程数量时,dubbo提供了executes这一属性来提供这个功能,比如我们想限制某个接口最大能同时使用线程池中的100个线程,我们可以如下配置:我们看下dubbo内部executes是如何实现的,这就得移
manzhizhen
·
2017-07-22 12:00
dubbo
Dubbo源代码分析七
muduo
源码分析之EventLoop
Eventloop事件循环:反应器(reactor):负责IO和定时器事件的分派。Reator总结性:(Eventloop,Poller,Channel,Timer)一个事件循环对应一个IO线程,IO线程执行EventLoop事件主循环,该主循环loop调用IO复用器poller监听事件集合,并将就绪事件通过事件分发器Channel执行相应的事件回调。1.ClassChannel:事件分发器,主要
Cassie_Yan
·
2017-07-21 16:53
muduo源码分析
Muduo
网络库学习知识点总结
static_cast(expression)该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法:①用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换。进行上行转换(把派生类的指针或引用转换成基类表示)是安全的;进行下行转换(把基类指针或引用转换成派生类表示)时,由于没有动态类型检查,所以是不安全的。②用于基本数据类型
chudongfang2015
·
2017-07-20 11:37
Muduo网络库
看透 Spring MVC
源代码分析
与实践 —— 俯视 Spring MVC
SpringMVCSpringMVC之初体验环境搭建在IDEA中新建一个web项目,用Maven管理项目的话,在pom.xml中加入SpringMVC和Servlet依赖即可。org.springframeworkspring-webmvc4.3.9.RELEASEjavax.servletjavax.servlet-api3.1.0providedSpringMVC简单配置在web.xml中配置
zhisheng
·
2017-07-14 00:00
java
intellij-idea
java-ee
spring-mvc
看透 Spring MVC
源代码分析
与实践 —— 网站基础知识
网站架构及其演变过程基础结构网络传输分解方式:标准的OSI参考模型TCP/IP参考模型海量数据的解决方案缓存和页面静态化缓存通过程序直接保存在内存中使用缓存框架(Encache、Redis、Memcache)页面静态化使用模板技术生成(Velocity、FreeMaker等)数据库优化表结构优化SQL语句优化分区分表索引优化使用存储过程代替直接操作过程分离活跃数据批量读取和延迟修改读写分离分布式数
zhisheng
·
2017-07-14 00:00
java
intellij-idea
spring-mvc
java-ee
Android系统进程间通信(IPC)机制Binder中的Server启动过程
源代码分析
Android系统进程间通信(IPC)机制Binder中的Server启动过程
源代码分析
http://blog.csdn.net/luoshengyang/article/details/6629298fcntl
来自大山的孩子
·
2017-06-27 16:34
findViewById方法探究
具体见下面的
源代码分析
。Activity中的findViewById方法执行流程如下:Activity.f
Sun_Jingjing
·
2017-06-25 17:48
FFmpeg源代码简单分析:libavdevice的gdigrab
=====================================================FFmpeg的库函数
源代码分析
文章列表:【架构图】FFmpeg源代码结构图-解码FFmpeg源代码结构图
dolphin98629
·
2017-06-14 09:22
video
muduo
网络库学习笔记(15):关于使用stdio和iostream的讨论
但是,在真实的项目中很少用到iostream(
muduo
网络库也不例外),本篇就对二者的优、缺点进行一个小结(主要考虑x86Linux平台,不考虑跨平台的可移植性,但是要考虑32-bit和
Leeds1993
·
2017-05-28 23:00
关于
muduo
你应该知道的基本理论
最近在看
muduo
,其中有些东西相对来说还是有些生涩。
我要吃面包
·
2017-05-13 22:58
Android 框架ButterKnife
源代码分析
一.ButterKnife介绍在Android编程过程中,我们会写大量的布局和点击事件,像初始view、设置view监听这样简单而重复的操作,这些代码繁琐而又不雅观,比如:TextView tvSetName = findViewById(R.id.xxx);tvSetName.setOnClickListener(new View.OnClickListener() { @Override
rongwei84n
·
2017-05-10 13:23
分析
源代码
butterknife
Android应用开发
Muduo
之Channel源码解析
Muduo
之Channel源码解析前面我们分析了Acceptor处理连接请求,之后创建TcpConnection对象分发给合适的EventLoop,而TcpConnection里面是包含Channel,
hejiajie1989
·
2017-05-08 12:01
网络编程
Muduo学习笔记
muduo
:: base/ThreadPool.h 分析
ThreadPool.hclassThreadPool{/*keymember*/private:/*conditionvariables*/ConditionnotEmpty_;ConditionnotFull_;/*threadpool*/boost::ptr_vectorthreads_;/*taskpool*/std::dequequeue_;/*keymemberfunction*/pu
shiyang6017
·
2017-05-05 00:00
线程池
Muduo
之Acceptor源码分析笔记
Muduo
之Acceptor源码解析前面我们大概介绍了
Muduo
网络库的整体架构以及Reactor模式的一般架构,从这里就开始分析
Muduo
网络库中用到的一些类。
hejiajie1989
·
2017-05-04 22:01
linux编程
网络编程
Muduo学习笔记
muduo
源码分析--线程池的实现
muduo
线程池主要有3个类的实现:EventLoop,EventLoopThreadPool,EventLoopThread,和Thread.1.Thread为对一个线程的封装:classThread
扎扎实实写代码
·
2017-04-25 10:43
muduo源码分析
FUZZ初学笔记(一)
安全漏洞发觉方法:1.白盒测试:为源代码评审,这种方法也可以在自动化工具的辅助下完成,
源代码分析
工具一般可以分为三类:1.1.1,编译时检查器:这种工具通常与编译器记成子啊一起,但是主要查找与安全性有关的问题而不是应用程序的功能问题
HONKONE
·
2017-04-22 09:20
漏洞挖掘
2017.4.10 学习记录与感想 (xss、ctf、学习感想)
xss的本质区别角度一角度二xss的分类反射型xss反射XSS原理感想存储型xssDOM型xss区别反射型xss和存储型xss的区别xss的模型挖掘xss怎么手工挖掘xssxss的原理dvwaxsslow
源代码分析
漏洞利用
foolisheddy
·
2017-04-10 23:08
每日F-Q
学习记录
实习日记
渗透测试
CoreCLR源码探索(四) GC内存收集器的内部实现 分析篇
为了分析这部分我花了一个多月的时间,期间也多次向CoreCLR的开发组提问过,我有信心以下内容都是比较准确的,但如果你发现了错误或者有疑问的地方请指出来,以下的内容基于CoreCLR1.1.0的
源代码分析
q303248153
·
2017-03-27 09:00
Buffer数据结构
muduo
中的Buffer为封装了的vector。vector为一块连续空间,且其本身具有自动增长的性质,它的迭代器为原始指针,使用起来较为方便。
qq_23542345
·
2017-03-20 17:32
muduo-c++日记
Jedis
源代码分析
:客户端设计与实现的套路
前言Jedis是java应用访问Redis服务的首选客户端,本文通过分析jedis客户端源代码,扒一扒客户端设计与实现的常用套路连接(Connection)要访问(Redis)服务,首先需要与服务建立连接,因此客户端库首先需要对连接进行抽象和封装,Jedis使用Connection类来封装与服务器的一个socket连接:publicclassConnectionimplementsClosable
xingpingz
·
2017-03-17 00:00
java
jedis
Log42j
源代码分析
:日志回滚
前言一般都会对应用程序日志做回滚处理,本文简要分析log4j2日志回滚实现触发策略log4j2使用TriggeringPolity接口来抽象日志回滚触发策略,使用了Strategy+Compose设计模式publicinterfaceTriggeringPolicy{voidinitialize(finalRollingFileManagermanager);booleanisTriggering
xingpingz
·
2017-03-16 00:00
log4j2
java
Log42j
源代码分析
:plugin(插件)机制
前言log4j2使用插件机制加载各种组件:appender,logger.etc,本文简要分析log4j2插件机制实现PluginAnnotation(注解)Plugin注解提供了一种便捷的方法将一个类声明成log4j2的插件,比如@Plugin(name="Console",category="Core",elementType="appender",printObject=true)publi
xingpingz
·
2017-03-13 00:00
log4j2
java
利用OCLint对代码进行静态审查
1.简介OCLint用于C,C++和Objective-C的静态
源代码分析
工具,用于提高代码质量,减少瑕疵。
smallLabel
·
2017-03-02 16:26
muduo
源码分析之事件处理器-Channel
前面两篇对Acceptor和TcpConnection的分析中,我们知道他们最终都是通过Channel和Eventpool简历连接,而且真正的事件处理函数也都是封装在Channel类中的。所以这里我把Channel看成事件处理器。 除了事件处理函数之外,Channel也是必须将可能产生事件的文件描述符封装在其中的。这里的文件描述符可以是filedescriptor,可以是socket,还可以
gswen
·
2017-02-24 11:54
服务器端编程
muduo源码分析
2016年,你读过的最好的IT技术书有哪几本?
def程序员原文https://www.zhihu.com/question/54350343陈硕等54人赞同了该回答1知乎陈硕大牛的服务器多线程编程
muduo
输的好不好可能更多的在于适合不适合尤其是技术书籍如果你已经具有
stecdeng
·
2017-02-14 12:08
C/C++语言
FreeRTOS的源代码个人分析(基于KEIL下STM32F103的Demo) 五
list.c与list.h的
源代码分析
这一篇之所以讲list的内容,是为了后面分析其他代码用的,list是FreeRTOS的一种链式数据结构,许多变量均采用这种数据结构,比如Ready任务表,pending
Edward_weiwei
·
2017-02-13 22:20
嵌入式
FreeRTOS
STM32
FreeRTOS的源代码个人分析(基于KEIL下STM32F103的Demo) 五
list.c与list.h的
源代码分析
这一篇之所以讲list的内容,是为了后面分析其他代码用的,list是FreeRTOS的一种链式数据结构,许多变量均采用这种数据结构,比如Ready任务表,pending
Edward_weiwei
·
2017-02-13 22:20
嵌入式
FreeRTOS
STM32
muduo
库的
源代码分析
2--简化方案
之前已经简单分析了
Muduo
库的软件架构:http://blog.csdn.net/adkada1/article/details/54342275接下来准备对
Muduo
库进行部分简化。
黑板报
·
2017-02-12 00:59
C++
Linux系统
CouchDB
源代码分析
准备
2012-12-12“凡事预则立,不预则废。”从今天开始,我要深入学习NoSQL了,并且学习CouchDB源代码。为此,一些准备工作肯定是要提前准备好的。首先是学习的方法,奥勒留在《沉思录》中说过,“已有的事後必再有;已行的事後必再行,日光之下並無新事。”前辈们走过的路,肯定都留下了足迹,我们当然可以借前辈之力,快速前行。蔡学镛前辈在微博上写过他自己学习开源代码的经验:如何有效阅读源代码,我的经验
knowthyselfcn
·
2017-02-09 23:17
笔记
Restlet实战(十)结合
源代码分析
Restlet-Spring配置文件
阅读更多在Restlet实战(四)与Spring集成给出了Restlet如何与Spring进行集成。下面就结合Restlet的源码分析一下Spring配置文件。在Spring的配置文件中,我们能看到这样的代码:Java代码从配置上很容易看出SpringFinder有一个方法:createResource,作用就是实例化在Spring中定义的Resource。看源码中的crateResource方法
Andy2017
·
2017-02-06 09:00
React-Native android
源代码分析
-视图创建
记录自己分析RN的过程。先看入口的MainActivity,它是继承自ReactActivity的。ReactActivity的内容/***Copyright(c)2015-present,Facebook,Inc.*Allrightsreserved.**ThissourcecodeislicensedundertheBSD-stylelicensefoundinthe*LICENSEfilei
taiji1985
·
2017-01-25 09:49
玩转Eclipse — 自动代码规范检查工具Checkstyle
Checkstyle是一个开
源代码分析
工具,能够帮助开发人员保证他们的代码遵循一定的代码规范。Checkstyle通过不断地
garfielder007
·
2017-01-14 17:01
IDE开发工具
muduo
库的
源代码分析
1--整体架构
最近,学习了陈硕大侠的《Linux多线程服务端编程:使用
muduo
C++网络库》很受启发。
黑板报
·
2017-01-12 22:50
C++
Linux系统
深入理解Android日志系统
Android开发中,logcat是我们不可或缺的调试工具,我一直有个疑问,logcat的到底是在哪里存储着呢,带着这个疑问,开始探究Android日志系统.参考文献:Android日志系统驱动程序Logger
源代码分析
没有下载源码的同学可以参考
张老虎
·
2016-12-27 10:20
SDWebImage 解析笔记
项目中一直都有使用SDWebImage,对这个框架有一定的了解,但是体系却未能贯通,因此特地整理下,主要参考:iOS
源代码分析
---SDWebImageSDWebImage源码剖析(-)SDWebImage
林大鹏天地
·
2016-12-19 21:42
muduo
的http库剖析
本文地址:(LYanger的博客:http://blog.csdn.net/freeelinux/article/details/53643802)一:http协议首先看一下httprequest:requestline+header+body(header分为普通报头,请求报头与实体报头)header与body之间有一空行(CRLF)请求方法有:GET、POST、HEAD、PUT、DELETE等
FreeeLinux
·
2016-12-14 19:44
Muduo源码剖析
muduo源码剖析
muduo
库的Acceptor类剖析
一:主要功能>>>Acceptor用于accept(2)接受TCP连接。>>>Acceptor的数据成员包括Socket、Channel。>>>Acceptor的socket是listeningsocket(即serversocket)。>>>Channel用于观察此socket的readable事件,并Acceptor::handleRead(),后者调用accept(2)来接受连接,并回调用户
FreeeLinux
·
2016-12-10 11:45
Muduo源码剖析
muduo源码剖析
muduo
库的EventLoopThread类剖析
3.
muduo
并发模型oneloopperthread+threadpool4.为了方便使用,就直接定义了一个I/O线程的类,就是EventLoopThread类,该类实际上就是对I/O线程的封装。
FreeeLinux
·
2016-12-08 21:17
Muduo源码剖析
muduo源码剖析
Redis源码解析——前言
对于一些没有接触过开
源代码分析
的同学来说,可能这是一件很麻烦的事。但是我总觉得做一件事,不管有多大多难,我们首先要在战略上蔑视它,但是要在战术上重视它。
breaksoftware
·
2016-12-08 20:10
开源项目
Redis
开源项目解析
实现及使用
muduo
库的EventLoop类剖析
本文地址:http://blog.csdn.net/freeelinux/article/details/53510541一:采用的线程通信机制首先来看一下一个进程(线程)如何通知另一个个等待中的(线程),有三种方法:1.pipe,使用fd[0]为读端,fd[1]为写端,半双工。等待线程关注fd[0]的可读事件。2.socketpair,也有一对文件描述符,可用于双向通信,全双工。3.eventf
FreeeLinux
·
2016-12-08 01:53
Muduo源码剖析
muduo源码剖析
Flink on Yarn模式启动流程
源代码分析
Flinkonyarn的启动流程可以参见前面的文章FlinkonYarn启动流程,下面主要是从源码角度看下这个实现,可能有的地方理解有误,请给予指正,多谢。-->1.命令行启动yarnsessionbin/yarn-session.sh-n3-jm1024-nm1024-st我们去看下启动脚本$JAVA_RUN$JVM_ARGS-classpath"$CC_CLASSPATH:$HADOOP_CL
FlyCynomys
·
2016-12-05 19:44
muduo
库的PollPoller类剖析
muduo
库中唯一使用面向对象的地方就在Poller,它有两个派生类,分别是PollPoller和EPollPoller。可以实现两种I/O多路复用机制。
FreeeLinux
·
2016-12-04 22:48
Muduo源码剖析
muduo源码剖析
muduo
的Channel类剖析
>它是
muduo
库负责注册读写事件的类,并保存了fd读写事件发生时调用的回调函数,如果poll/epoll有读写事件发生则将这些事件添加到对应的通道中。
FreeeLinux
·
2016-12-04 22:33
Muduo源码剖析
muduo源码剖析
muduo
库的LogFile日志文件类剖析
之前写了
muduo
的Logger类的分析,今天来看一下LogFile类及其相关的类分析,之前的Logger是控制日志怎样写,怎样用,怎样实现,而今天的LogFile则是用来控制日志怎样和文件打交道。
FreeeLinux
·
2016-12-04 14:04
Muduo源码剖析
muduo源码剖析
muduo
库的Logger及附属类剖析
我们先来看一下logger工作的流程:它的宏是这样定义的(举出一例):#defineLOG_INFOif(
muduo
::Logger::logLevel()impl-->LogStream-->operatorg_output
FreeeLinux
·
2016-12-03 01:26
Muduo源码剖析
muduo源码剖析
上一页
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
其他