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源代码分析
为什么多线程读写 shared_ptr 要加锁?
陈硕(giantchen_AT_gmail_DOT_com)2012-01-28我在《Linux多线程服务端编程:使用
muduo
C++网络库》第1.9节“再论shared_ptr的线程安全”中写道:(shared_ptr
DLANDML
·
2023-04-17 16:37
C++
数据结构
c++
《Linux多线程服务端编程》笔记——多线程服务器的适用场合和常用编程模型
最近在进修
muduo
,于是配套陈硕(大神老师,直接开头指出,之后就不写引用参考了,有兴趣的直接搜就可以了)的书一个起来学习,真的是不怕知识多,就怕知识乱。
闫++
·
2023-04-16 03:56
网络
多线程
服务端编程
Muduo
库源码剖析(一)——Channel
Muduo
库源码剖析(一)——Channel说明本源码剖析是在
muduo
基础上,保留关键部分进行改写分析。
FuzhouJiang
·
2023-04-15 18:51
Muduo
网络编程
C/C++
c++
服务器
mysql innodb 源码_MySQL列:innodb的源代码的分析的基础数据结构
在过去的一年中的数据库相关的
源代码分析
。前段时间分析levelDB实施和BeansDB实现,数据库网络分析这两篇文章非常多。他们也比较深比较分析,所以没有必要重复很多劳力。
weixin_39639286
·
2023-04-15 18:07
mysql
innodb
源码
mysql innodb源码_MySQL系列:innodb
源代码分析
之内存管理
在innodb中实现了自己的内存池系统和内存堆分配系统,在innodb的内存管理系统中,大致分为三个部分:基础的内存块分配管理、内存伙伴分配器和内存堆分配器。innodb定义和实现内存池的主要目的是提供内存的使用率和效率,防止内存碎片和内存分配跟踪和调试。我们先来看看他们的关系和结构。下面是它的关系结构图:上图中的:ut_mem_block块是基础内存管理Buddyallocator是内存伙伴分配
何以法考人
·
2023-04-15 18:37
mysql
innodb源码
庖丁解牛之LruCache
源代码分析
和设计
背景LruCache这个很常见,做过android的开发没见过也都听说过这个,一般应用常见就是做缓存的时候用到,说一下我与LruCache的故事吧,好多年面试的时候让我实现一下Lru算法,我当时用HashMap搞的,搞的好复杂,其实你看Android的中LruCahe类很简单,就三百多行代码什么是Lru算法呢?LRU是LeastRecentlyUsed的缩写,即最近最少使用,常用于页面置换算法,是
饥饿的大灰狼
·
2023-04-15 12:17
HDFS
源代码分析
之DataNode BlockScanner实现
BlockScanner实现每个DataNode都会有一个BlockScanner周期性的验证DataNode上存储的所有数据块的正确性,并把损坏的数据块报告给NameNode。VolumeScanner是专门针对每个存储目录做块扫描的服务,由于DataNode可以使用多目录,所以BlockScanner会持有多个VolumeScanner。publicclassBlockScanner{.../
苍老流年
·
2023-04-14 07:58
大数据
--
hadoop源代码分析
代码审计思路详解
代码审计概念代码审计定义代码审计(Codeaudit)是一种以发现程序错误,安全漏洞和违反程序规范为目标的
源代码分析
。软件代码审计是对编程项目中源代码的全面分析,旨在发现错误,安全漏洞或违反编程约定。
C1yas0
·
2023-04-14 06:03
java
php
Muduo
源码剖析--整体架构
Muduo
整体架构1.编译和安装git:GitHub-chenshuo/
muduo
:Event-drivennetworklibraryformulti-threadedLinuxserverinC++
birate_小小人生
·
2023-04-13 02:57
muduo剖析
架构
linux
tcp
spring mvc源码学习笔记(学习自springMvc
源代码分析
与实践)
SpringMvc自身创建的过程mvc中的servlet一共有三个层次,分别为HttpServletBeanFrameworkServletDispatcherServlet其中第一个是直接继承httpServlet第二个是初始化webapplicationContext第三个是初始化自身的9大组件DispatcherServlet主要使用OnRefresh调用initStrategies初始化9
张帆demo
·
2023-04-12 16:37
muduo
网络库源码分析——整体架构
muduo
的源代码中,虽然不考虑可移植性,但还是划分了很多小的类(Channel、Socket、TcpConnection、Acceptor,不知道是不是参考了java中的概念),类之间大量通过boost
sunwake999
·
2023-04-12 00:15
c++11
muduo
muduo
源码剖析——ThreadPool线程池的实现
1线程池原理
muduo
源码中线程池的实现是基于生产者/消费者模式的,可参考基于生产者/消费者模式原理实现无界缓冲区和有界缓冲区。其中缓冲区(即下图中的任务队列)为“环形缓冲区”。
高自强的博客
·
2023-04-12 00:42
muduo
线程池
muduo
源码剖析——以三个切片浅析
muduo
库代码设计的严谨性、高效性与灵活性
0前言陈硕大佬的
muduo
网络库的源码我已经看了好久了,奈何本人实力有限,每每看到其代码设计的精巧之处只能内心称赞,无法用言语表达出来。实在令人汗颜。
高自强的博客
·
2023-04-12 00:42
muduo
多线程
muduo
库源码分析2——QueryServer服务器启动流程
muduo
网络库中,基于google::protobuf数据标准的网络服务器实例,放在example/protobuf/codec中。
杨铮的技术博客
·
2023-04-12 00:40
c/c++开发
linux开发
网络开发
muduo
muduo
库源码分析3——
muduo
事件循环分析
muduo
事件循环分析
muduo
网络库网络I/O模型为非阻塞reactor模式。使用linux的epoll或poll系统调用,轮寻多个socket,然后利用事先注册的事件句柄处理发生事件的套接字。
杨铮的技术博客
·
2023-04-12 00:10
c/c++开发
linux开发
网络开发
muduo
Muduo
源码剖析
1、总体流程1.acceptor进行listen阶段后,往channel中注册可读事件。2.acceptor可读处理中生成TcpConnection指针,通过EventloopThreadPool轮询出其中一个线程的eventloop,并将此TcpConnection的可读、可写等事件注册到自己Channel(eventLoop)中。3.每个EventLoop监听到具体channel的事件后,分析
YanWenCheng_
·
2023-04-12 00:08
muduo
c++
muduo
网络库源码学习————线程本地单例类封装
muduo
库中线程本地单例类封装代码是ThreadLocalSingleton.h如下所示://线程本地单例类封装//UseofthissourcecodeisgovernedbyaBSD-stylelicense
缱绻的西格玛
·
2023-04-12 00:38
muduo库源码学习
线程
网络
库
源码
muduo
网络库源码学习————线程特定数据
muduo
库线程特定数据源码文件为ThreadLocal.h//线程本地存储//UseofthissourcecodeisgovernedbyaBSD-stylelicense//thatcanbefoundintheLicensefile
缱绻的西格玛
·
2023-04-12 00:07
muduo库源码学习
线程
网络
库
源码
Muduo
库源码剖析(三)——获取线程tid方法
相关知识点__thread__thread修饰表示使用线程局部存储机制(threadlocal机制),即会为修饰的变量在当前线程存储一份copy,别的线程是看不到这个变量的修改__thread是GCC内置的线程局部存储设施,其存储效率可以和全局变量相比;__thread变量在每一个线程中都有一份独立实例,各线程值是互不干扰的。extern在C++中,extern是一个关键字,用于在当前文件以外的地
FuzhouJiang
·
2023-04-12 00:34
网络编程
Muduo
C/C++
c++
服务器
linux
6.S081 附加Lab4 从源代码看进程退出——exit,wait,kill
6.S081附加Lab4从源代码看进程退出过程——exit,wait,kill进程退出,主要有两种方式exit和killed,本博客根据xv6
源代码分析
,进程退出并释放资源的过程。
蔚天灿雨
·
2023-04-11 22:22
OS
-
6.S081
底层函数实现/数据结构
系统架构
unix
密码学相关概念
https://blog.csdn.net/omnispace/article/details/79311967[以太坊
源代码分析
]IV.椭圆曲线密码学和以太坊中的椭圆曲线数字签名算法应用参考:https
古则
·
2023-04-11 16:35
Linux C++ 网络编程(二)
Linux网路编程比较经典的有Redis、
Muduo
、TeamTalk等开源项目。本文将以
Muduo
来介绍网络编程的框架,学习完
Muduo
再去学习其他框架就容易许多了。
奋斗_0268
·
2023-04-11 14:26
c++11编写线程池
写在前面由于最近在学习
muduo
网络库,需要许多的多线程和网络编程的知识。现在正好看到线程池的部分,就想着用C++11来编写一个线程池来加深自己的对线程池的理解。
%s无聊_我很
·
2023-04-09 20:04
c++
开发语言
muduo
网络编程库阅读
正文遵循Reactor模型,封装了EventLoop。有以下特点:利用MutexLockGuard->MutexLock->pthread_mutex_t控制EventLoop::pendingFunctors_的线程安全。回调函数,std::function和std::bind的大量应用。用于回调读/写/错误/关闭等事件。高度抽象。用TcpConnection封装Channel,后者封装了soc
不存在的里皮
·
2023-04-09 10:34
muduo
源码分析之回调模块
这次我们主要来说说
muduo
库中大量使用的回调机制。
shicoder
·
2023-04-08 10:14
Muduo
库源码剖析(八)——TcpServer类
TcpServer类要点TcpServer类的主要作用是,管理整个服务器,做如下的一些操作:管理accept(2)获得的TcpConnectionTcpServer是供用户直接使用的,生命期由用户控制设置mainLoop,并利用mainLoop进行新连接的管理初始化TcpServer对应的Acceptor用于监听新连接到来根据oneloopperthread的设计方案,setThreadNum设置
qq_42120843
·
2023-04-08 00:14
网络编程
Muduo
C/C++
c++
服务器
linux
Muduo
库源码剖析(九)——TcpConnection类
TcpConnection类要点TcpConnection表示的是“一次TCP连接”,它是不可再生的,一旦连接断开,这个TcpConnection对象就没啥用了。它的主要功能就是对成功连接服务器的客户连接connfd的封装。一个TcpConnection唯一对应一个Channel和SocketChannel处理事件的一系列回调就是在TcpConnection类中设置和实现的。TcpConnecti
qq_42120843
·
2023-04-08 00:14
Muduo
网络编程
C/C++
服务器
c++
linux
Muduo
库源码剖析(七)——缓冲区Buffer类
Buffer类要点由于
Muduo
库使用的是非阻塞IO模型,即每次send()不一定全发完,没发完的数据要用一个容器进行接收,所以必须要实现应用层缓冲区.缓冲区中各个指针和区域,下图要牢牢记住:其中prependablebytes
qq_42120843
·
2023-04-08 00:13
Muduo
网络编程
C/C++
c++
服务器
linux
【无标题】
Muduo
库源码剖析(十)——总结
Muduo
网络库的核心代码模块Channel封装fd的对应事件变化情况,和关注事件fd、events、revents、callbacks,两种channel:listenfd-acceptorChannel
qq_42120843
·
2023-04-08 00:58
Muduo
网络编程
C/C++
服务器
linux
c++
文末送靶场邀请码 | 怎样快速入门Java代码审计?(一问一答汇总)
代码审计(CodeAudit)是一种以发现安全漏洞、程序错误和违反程序规范为目标的
源代码分析
。
Ms08067安全实验室
·
2023-04-07 10:10
编程语言
人工智能
java
大数据
面试
linux fs
源代码分析
,BlueFs
源代码分析
报告.doc
BlueFs
源代码分析
报告BlueFs
源代码分析
报告一、什么是BluefsBluefs是密歇根大学电子工程与计算机科学系的研究者们提出的一个分布式文件系统。
weixin_39611546
·
2023-04-06 14:54
linux
fs源代码分析
Kotlin学习之开
源代码分析
、重构(二)
3.4MVVM3.4.1viewmodel3.4.1.1RxViewModelabstractclassRxViewModel(privatevalschedulerProvider:SchedulerProvider):ViewModel(){varjobs=mutableListOf()funlaunch(code:suspendCoroutineScope.()->Unit){jobs.ad
wavaya
·
2023-04-05 10:38
Muduo
库编译时提示错误deprecated: Please use ByteSizeLong() instead
错误提示如下解决方法在
muduo
库的CMakeList中添加编译选项-Wno-deprecated-declarations
qq_42120843
·
2023-04-05 01:13
Muduo
muduo
c++
muduo
库使用方法(一)
库安装
Muduo
库和boost库安装参考:Linux平台下
muduo
网络库源码编译安装
Muduo
库简介
muduo
库线程模型采用sub-Reactor模式,采用nonblockio+oneloopperthread
qq_42120843
·
2023-04-05 01:13
Muduo
C/C++
网络编程
服务器
c++
深入解析SpringBoot核心运行原理和运作原理源码
本章会带领大家通过源码学习SpringBoot的核心运作原理,内容涉及自动配置的运作原理、核心功能模块、核心注解以及使用到的核心
源代码分析
。核心运行原理使用SpringBoot时,我们只需引|
写代码的珏秒秒
·
2023-04-03 04:19
编程
Java
程序员
spring
boot
java
spring
Linux C/C++网络编程实战-陈硕-笔记11-Roundtrip代码分析
代码UDP,twothreadsrecipes/tpc/roundtrip_udp.ccUDPwith
muduo
,singlethread
muduo
/examples/roundtrip/roundtrip_udp.ccTCPwith
muduo
muduo
Anita-Sun
·
2023-04-02 11:36
Linux
linux
网络
c语言
GSYGithubAppWeex
源代码分析
https://github.com/CarGuo/GSYGithubAppWeex思路:创建一个helloworld简单weex项目对比GSYGithubAppWeex项目,一样的是框架自有代码,不同的为差异性代码,针对这一部分进行研究分析得出config/config.js网络配置proxyTableconfig/webpack.common.conf.jsweexEntry网页配置入口点co
陈桐Caliburn
·
2023-04-02 05:04
Muduo
源码刨析-完成服务器功能的TcpServer类
目录TcpServer类功能数据成员暴露的接口TcpServer类功能 TcpServer是
muduo
库中创建Tcp服务器的类,可以通过对:TcpServer的msgcallback进行设置,可以完成我们想要的服务器功能
c++终结者
·
2023-04-02 03:16
服务器
网络
muduo
库http源码分析
httprequestHTTP请求包含:requestline+header+body(header分为普通报头,请求报头与实体报头)header与body之间有一空行(CRLF)请求方法有:Get,Post,Head,Put,Delete等协议版本1.0、1.1常用请求头Accept:浏览器可接受的媒体(MIME)类型;Accept-Language:浏览器所希望的语言种类Accept-Enco
houcaihua
·
2023-04-02 01:17
http
网络协议
网络
muduo
网络库示例 (限制并发数和踢掉空闲连接)
限制服务器最大并发连接数(
Muduo
Manual.pdfP108)这个比较简单,在连接里面判断最大数量断开连接。
houcaihua
·
2023-04-02 01:17
网络
服务器
muduo
库net源码分析一(网络编程本质)
TCP网络编程最本质的是处理三个半事件1、连接建立:服务器accept(被动)接受连接,客户端connect(主动)发起连接。2、连接断开:主动断开(close、shutdown),被动断开(read返回0)。3、消息到达:文件描述符可读。4、消息发送完毕:这算半个。对于低流量的服务,可不必关心这个事件,这里的发送完毕是指数据写入操作系统缓冲区,将由TCP协议栈负责数据的发送与重传,不代表对方已经
houcaihua
·
2023-04-02 01:16
网络
tcp/ip
服务器
muduo
网络库源码分析
muduo
网络库源码分析发布一个基于Reactor模式的C++网络库01主从Reactor网络模型TcpClient客户端代码维护了Connector模块事件分发器主要由EventLoop类实现Eventloop
-特立独行的猪-
·
2023-04-01 23:18
计算机网络
网络
muduo
---C++网络编程库
陈硕
muduo
参考资料
muduo
源码剖析
Muduo
是一个基于Reactor模式的现代C++网络库,它采用非阻塞IO模型,基于时间驱动和回调,原生支持多核多线程,适合编写Linux服务端多线程网络应用程序
Mr.liang呀
·
2023-03-31 20:18
TCP/IP网络编程
Linux高性能服务器
C++基础
c++
网络
架构
【Lilishop商城】No3-7.模块详细设计,订单模块-1(购物车、收银台)的详细设计
全部目录看顶部专栏,代码、文档、接口路径在:【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客全篇会结合业务介绍重点设计逻辑,其中重点包括接口类、业务类,具体的结合
源代码分析
清晨敲代码
·
2023-03-31 20:35
lilishop商城学习
购物车
支付
一、重写
muduo
网络库之服务器编程及测试
目录一、基于
muduo
网络库开发服务器程序的基本步骤1、组合TcpServer对象2、创建EventLoop事件循环对象的指针3、明确TCPServer构造函数需要的参数,输出ChatServer的构造函数
小鱼的编程之路
·
2023-03-31 11:03
Linux网络编程
重写muduo网络库
服务器
网络
运维
Muduo
网络库核心梳理
Muduo
网络库
Muduo
网络库本身并不复杂,是一个新手入门C++面向对象网络编程的经典实战项目。但是,新手在刚刚上手读代码的时候,非常容易陷入代码的汪洋大海,迷失方向。
wbvalid
·
2023-03-31 10:16
C++
c++
网络
编程语言
linux
muduo
库介绍
muduo
库是一个多线程服务器开发库
muduo
作者陈硕,现在在美国加州硅谷某互联网大公司工作,从事大规模分布式的可靠系统工程。
houcaihua
·
2023-03-31 10:10
服务器
运维
muduo
网络库示例(聊天服务器)
聊天服务器(
Muduo
Manual.pdfP66)examples/asio/chat/server.cc单线程examples/asio/chat/server_threaded.cc,多线程TcpServer
houcaihua
·
2023-03-31 10:10
服务器
网络
后端
c++
muduo
网络库源码详解(2) —— 以EchoServer为例子,从TcpServer的初始化说起
muduo
网络库源码详解(2)以EchoServer为例子,从TcpServer的初始化说起,分析ConnectionCallback回调函数是如何一步步设置到Channel里的主要参考了陈硕的书《Linux
爱好学习的青年人
·
2023-03-31 10:07
muduo
net库源码分析
网络
linux
[剖析
muduo
网络库]1.IO的阻塞和非阻塞、同步和异步
muduo
库作者陈硕老师原话:在处理IO的时候,阻塞和非阻塞都是同步IO,只有使用了特殊的API才是异步IO如果说的是业务层面上的一个逻辑处理是同步还是异步的时候,那么:同步:A操作等待B操作做完事情后
下酒番陪绅士
·
2023-03-31 10:02
muduo网络库
c++
网络
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
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
其他