一、简介Muduo(木铎)是基于 Reactor 模式的网络。二、安装从github下载源码安装:https://github.com/chenshuo/muduomuduo依赖了很多的,所以在安装muduo之前应该安装这些,包括:curl、c-ares、protobuf。前面两个在cent...
转载 2015-10-18 18:18:00
181阅读
2评论
muduo网络源码解析(1):多线程异步日志(上)muduo网络源码解析(2):多线程异步日志(中)muduo网络源码解析(3):多线程异步日志(下)muduo网络源码解析(4):TimerQueue定时机制muduo网络源码解析(5):EventLoop,Channel与事件分发机制muduo网络源码解析(6):TcpServer与TcpConnection(上)muduo网络
muduo的线程模型为one loop per thread+thread pool模型,在前面一篇文章的末尾曾简单的提起过:https://blog.csdn.net/qq_41453285/article/details/105104845 本节以一个Sudoku Solver(数独求解)例子为例,回顾了并发网络服务程序的多种设计方案,并介绍了使用muduo网络编写多线程服务器的两种最常用手法 在后面“muduo编程示例”相关文章会展现muduo在编写单线程并发网络服务程序方面的能力与便捷性。本文
原创 2021-08-28 15:55:15
515阅读
# muduo网络架构科普 ## 1. 介绍 muduo是一个C++网络,它提供了高效、可靠的网络编程框架,被广泛应用于各种服务器程序的开发中。muduo的设计理念是简单、高效、可扩展,它在网络编程领域有着良好的口碑。 ## 2. muduo网络架构概述 muduo的网络架构是基于Reactor模式的,它采用了事件驱动的方式处理网络事件。下面我们来详细介绍muduo的网络架构。 #
muduo的线程模型为one loop per thread+thread pool模型,在前面一篇文章的末尾曾简单的提起过:https://blog..net/qq_41453285/article/details/105104845
原创 2022-01-15 16:50:17
433阅读
准备讲解了,这里就直接放代码吧。#pragma once#include "EventLoop.hpp"#include "Accept.hpp"#include "EventLoopThreadPool.hpp"#include "InetAddr.hpp"#include "nocopyable.hpp"#include "callback.hpp"#include <string>#include <functional>#include <ato
原创 2022-01-15 17:17:28
97阅读
最近VScode坏了,莫名其妙连不上虚拟机了,很难受。已经判定不是Linux的问题,因为用cmd可以远程连接上。所以这份就用VS先顶一下了,报了一堆的错也看不清楚。文章目录CallBack.hppTcpConnection.hppTcpConnection.ccCallBack.hpp存放一些回调声明。#pragma once#include <functional>class Buffer;class TcpConnection;class timestamp;u
原创 2021-09-10 13:58:43
3765阅读
最近VScode坏了,莫名其妙连不上虚拟机了,很难受。已经判定不是Linux的问题,因为用cmd可以远程连接上。所以这份就用VS先顶一下了,报了一堆的错也看不清楚。文章目录CallBack.hppTcpConnection.hppTcpConnection.ccCallBack.hpp存放一些回调声明。#pragma once#include <functional>class Buffer;class TcpConnection;class timestamp;u
原创 2022-01-15 17:17:38
73阅读
准备讲解了,这里就直接放代码吧。
原创 2021-09-16 14:29:41
2760阅读
文章目录一、TcpServer对象构造时,都做了哪些事1.
原创 2022-08-17 16:37:25
76阅读
文章目录1.mysql配置2.windows底下额BankServer改为Linux用muduo来实现1.mysq
原创 2023-03-07 09:18:45
62阅读
一、由来2010年3月我写了一篇《学之者生,用之者死——ACE历史与简 评》1,其中提到“我心目中理想的网络”的样子: ·线程安全,原生支持多核多线程。 ·不考虑可移植性,不跨平台,只支持Linux,不支持Windows。 ·主要支持x86-64,兼顾IA32。(实际上muduo也可以运行在ARM 上。) ·不支持UDP,只支持TCP。 ·不支持IPv6,只支持IPv4。 ·不考虑广域网应...
一、由来2010年3月我写了一篇《学之者生,用之者死——ACE历史与简 评》1,其中提到“我心目中理想的网络”的样子: ·线程安全,原生支持多核多线程。 ·不考虑可移植性,不跨平台,只支持Linux,不支持Windows。 ·主要支持x86-,兼顾IA32。(实际上muduo也可以运行在ARM 上。) ·不支持UDP,只支持TCP。 ·不支持IPv6,只支持IPv4。 ·不考虑广域网应...
__thread 线程局部存储 Thread Local Storage(tls),是一种机制,通过这一机制分配的变量,每个当前线程有一个该变量的实例。 在用户层,用一个新的存储类型关键字:__thread 表示这一扩展。 __thread 使用规则: 如果一个线程局部存储变量有一个初始化器,它必须 ...
转载 2021-04-24 12:45:00
357阅读
2评论
PRId64 int64_t 用来表示64位整数,在32位系统中是 long long int,在64位系统中是 long int,所以打印 int64_t 的格式化方法是: printf("%ld", value); //@ 64bit OS printf("%lld", value); //@
转载 2021-04-23 13:40:00
191阅读
源码 Exception.h #pragma once #include <exception> #include <string> namespace muduo { class Exception : public std::exception { public: explicit Except
转载 2021-04-24 12:56:00
114阅读
源码 ThreadLocalSingleton.h #pragma once #include <pthread.h> #include <assert.h> #include "NonCopyable.h" namespace muduo { template <typename T> class
转载 2021-04-26 10:10:00
96阅读
源码 CountDownLatch.h #pragma once #include "Mutex.h" #include "Condition.h" #include "NonCopyable.h" namespace muduo { class CountDownLatch : public No
转载 2021-04-25 13:42:00
145阅读
文章目录​​1.muduo​​​​2.线程模型​​​​3.TCP网络编程本质​​1.muduomuduo是基于Reactor模式的网络,核心是:事件循环EventLoop,用于相应计时器和IO事件muduo采用基于对象object-based,而非面向对象object-oriented的设计风格muduo的核心是:每个IO线程一个事件循环,把IO事件分发到回调函数上2.线程模型muduo的线程模
原创 2023-03-07 06:09:50
177阅读
Condition Variable 初始化和销毁 #include <pthread.h> int pthread_cond_destroy(pthread_cond_t *cond); int pthread_cond_init(pthread_cond_t *restrict cond,con ...
转载 2021-04-24 17:29:00
179阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5