搜索结果
查询Tags标签: Muduo,共有 20条记录-
Muduo库
MutexLock#include <boost/noncopyable.hpp> #include <thread> #include <assert.h> class MutexLock : boost::noncopyable { public:MutexLock():holder_(0){pthread_mutex_init(&mutex_,NULL);}~MutexLock(){pthread_mutex_destroy(&mutex_…
2022/8/31 6:24:32 人评论 次浏览 -
muduo源码分析之TcpServer模块
这次我们开始muduo源代码的实际编写,首先我们知道muduo是LT模式,Reactor模式,下图为Reactor模式的流程图[来源1]然后我们来看下muduo的整体架构[来源1]首先muduo有一个主反应堆mainReactor以及几个子反应堆subReactor,其中子反应堆的个数由用户使用setThreadNum函数设…
2022/4/24 22:13:11 人评论 次浏览 -
muduo源码分析之muduo简单运用
今天不先实现muduo项目,我们先来看下muduo库的基本使用,只有了解了如何用,才能在写代码的时候知道自己写的找个函数是干嘛的,实际上是怎么使用的这个函数。首先说简单点,就是定义一个Server,设置两个回调函数 // 回调连接相关的事件 void onConnection(const TcpCon…
2022/4/24 22:13:00 人评论 次浏览 -
muduo库net源码分析三(定时器)
让EventLoop 能够处理定时器事件 定时函数 用于让程序等待一段时间或安排计划任务: sleep alarm usleep nanosleep clock_nanosleep getitimer / setitimer timer_create / timer_settime / timer_gettime / timer_delete timerfd_create / timerfd_gettime / timerfd_se…
2022/2/21 17:29:17 人评论 次浏览 -
C++练手小项目(基于muduo网络库+mysql+jsoncpp的简易HTTPWebServer用于网页显示数据库后台数据
基于muduo网络库+mysql+jsoncpp的简易HTTPWebServer 项目介绍背景介绍主要模块介绍1、基于muduo网络库的WebServer:2、HTTP协议栈3、JsonServer:4、SQLConnection5、main模块 实现过程1、确定如何实现一个HTTPWebServer2、手动实现HTTP协议栈3、结合HTTP协议栈与muduo网…
2022/1/30 19:04:20 人评论 次浏览 -
muduo网络库简介和编程示例
muduo网络库简介和编程示例 面向对象编程 风格 基于对象编程 风格 借助boost bind/function来实现基于对象的编程trivial constructor :无用的构造函数 non-trivial constructor :有用的构造函数library 库中类相对比较独立,我们编写应用的时候需要 编写…
2022/1/12 22:06:06 人评论 次浏览 -
muduo网络库简介和编程示例
muduo网络库简介和编程示例 面向对象编程 风格 基于对象编程 风格 借助boost bind/function来实现基于对象的编程trivial constructor :无用的构造函数 non-trivial constructor :有用的构造函数library 库中类相对比较独立,我们编写应用的时候需要 编写…
2022/1/12 22:06:06 人评论 次浏览 -
muduo学习简单介绍
介绍muduo 网络库,是陈硕大神发布在github上的一个c++项目。几乎没有引用第三方库,手动封装了系统api,非常适合不希望仅仅成为简单api调用员的programmer学习。使用cmake编译,同时可以顺便掌握cmake使用。总之我非常推荐后端程序员可以学习一下,尤其是c++程序员,无论是…
2022/1/11 23:34:23 人评论 次浏览 -
muduo学习简单介绍
介绍muduo 网络库,是陈硕大神发布在github上的一个c++项目。几乎没有引用第三方库,手动封装了系统api,非常适合不希望仅仅成为简单api调用员的programmer学习。使用cmake编译,同时可以顺便掌握cmake使用。总之我非常推荐后端程序员可以学习一下,尤其是c++程序员,无论是…
2022/1/11 23:34:23 人评论 次浏览 -
muduo网络库base源码详细分析
1 muduo网络库的目录结构 /muduo$ tree ./ -L 2 ./ ├── BUILD.bazel ├── build.sh ├── ChangeLog ├── ChangeLog2 ├── CMakeLists.txt ├── contrib │?? ├── CMakeLists.txt │?? ├── hiredis │?? └── thrift ├── muduo ├── READ…
2022/1/4 17:12:38 人评论 次浏览 -
muduo网络库base源码详细分析
1 muduo网络库的目录结构 /muduo$ tree ./ -L 2 ./ ├── BUILD.bazel ├── build.sh ├── ChangeLog ├── ChangeLog2 ├── CMakeLists.txt ├── contrib │?? ├── CMakeLists.txt │?? ├── hiredis │?? └── thrift ├── muduo ├── READ…
2022/1/4 17:12:38 人评论 次浏览 -
muduo库的安装使用
今天开始了陈硕大大的《linux多线程服务端编程》之旅,进行muduo网络库的学习,这里主要记录一下在win11下WSL的ubuntu子系统中进行的muduo的安装。 首先,由于muduo是采用cmake作为build system,所以先要安装cmke,另外由于muduo依赖于Boost(核心库依赖TR1),所以Boost也…
2021/12/10 23:18:10 人评论 次浏览 -
muduo库的安装使用
今天开始了陈硕大大的《linux多线程服务端编程》之旅,进行muduo网络库的学习,这里主要记录一下在win11下WSL的ubuntu子系统中进行的muduo的安装。 首先,由于muduo是采用cmake作为build system,所以先要安装cmke,另外由于muduo依赖于Boost(核心库依赖TR1),所以Boost也…
2021/12/10 23:18:10 人评论 次浏览 -
muduo记录2:muduo EPollPoller源码学习
muduo EPollPoller源码学习 一 Channel怎么update到epollfd EPollPoller::update(),这个方法的层层调用关系: 假设acceptor或者TcpConnection对象刚刚创建,第一次调用了自己的channel成员的enableReading();channel因此更新表示关注事件的events_,然后update(); Cha…
2021/7/27 17:06:20 人评论 次浏览 -
muduo记录2:muduo EPollPoller源码学习
muduo EPollPoller源码学习 一 Channel怎么update到epollfd EPollPoller::update(),这个方法的层层调用关系: 假设acceptor或者TcpConnection对象刚刚创建,第一次调用了自己的channel成员的enableReading();channel因此更新表示关注事件的events_,然后update(); Cha…
2021/7/27 17:06:20 人评论 次浏览