muduo
Sanzo00
sanzo.top
展开
-
muduo 笔记
文章目录base库copyable、noncopyableAtomicTimestampDateMutexConditionCountDownLatchThreadCurrentThreadExceptionBlockingQueueStringPieceLogStreamLoggingnet库EndianInetAddressSocketsOpsSocketChannelPollerEventLoopTimerQueueAcceptorTcpConnectionConnectorBufferTcpServ原创 2020-05-09 18:22:26 · 612 阅读 · 1 评论 -
muduo学习笔记 日志类
learn_muduoLoggerLogger有六个日志等级TRACEDEBUGINFOWARNERRORFATAL日志的输出语句是通过宏定义完成,编译期完成宏定义替换,创建Logger的临时对象。#define LOG_TRACE if (muduo::Logger::logLevel() <= muduo::Logger::TRACE) \ muduo::Log...原创 2020-04-04 15:55:37 · 269 阅读 · 0 评论 -
muduo学习笔记 线程类
muduo学习笔记 Thread执行过程线程属性线程标识 pthreadId_,pid_t线程函数 func_线程名字 name_线程序号 numCreated_bool started_; // 线程状态标识bool joined_;pthread_t pthreadId_; // pthread_函数使用pid_t tid_; // 线程标识...原创 2020-04-02 17:37:24 · 283 阅读 · 0 评论 -
muduo学习笔记 - 第五章 高效的多线程日志
第五章 高效的多线程日志日志有两种意思:诊断日志交易日志本章讲的是前一种日志,文本的供人阅读的日志,通常用于故障诊断和追踪,也可用于性能分析。日志通常要记录:收到的每条消息的id(关键字段,长度,hash等)收到的每条外部消息的全文发出每条消息的全文,每条消息都有全局唯一的id关键部分状态的变更,等等5.1 功能需求日志库大...原创 2020-03-02 19:07:00 · 183 阅读 · 0 评论 -
muduo学习笔记 - 第4章 C++多线程系统编程精要
第4章 C++多线程系统编程精要Pthreads只保证统一进程之内,同一时刻的各个线程的id不同,不能保证同一进程先后多个进程具有不同的id,更不要说一台机器上多个进程之间的id唯一性,pthread_t不适合用做程序对线程的标识符。推荐使用**gettid()**的返回值作为线程id返回值类型pid_t,通常是小整数,便于在日志输出可以在/proc文件系统中找到对应项,/pro...原创 2020-03-01 20:33:42 · 240 阅读 · 0 评论 -
muduo学习笔记 - 第3章 多线程服务器的适合场合与常用编程模型
第3章 多线程服务器的适合场合与常用编程模型3.1 基本概念同步和异步针对程序和内核的交互同步:用户进程触发IO操作,等待或轮询的查看IO是否就绪异步:用户进程触发IO操作,继续做自己的事情,当IO操作完成通知进程阻塞和非阻塞针对进程在访问数据,更具IO的状态采取不同的方式阻塞:数据的读写会一直等待非阻塞:数据的读写会立即返回状态值IO模型同步阻...原创 2020-03-01 19:42:36 · 166 阅读 · 0 评论 -
muduo学习笔记 - 第2章 线程同步精要
第2章 线程同步精要2.1 互斥器 (mutex)互斥器保护了临界区,任何时刻最多只能有一个线程在mutex划出的临界区内活动推荐使用原则:用RAII手法封装mutex的创建、销毁、加锁、解锁四个操作只是用非递归的mutex (不可重入的mutex)不手动调用lock()和unlock()函数,交给栈上的Guard对象的构造和析构负责使用Guard对象时考虑调用栈上持有的锁,防止加...原创 2020-03-01 19:41:36 · 374 阅读 · 1 评论 -
muduo学习笔记 - 第1章 C++多线程系统编程
第1章 C++多线程系统编程1.1 智能指针C++中动态内存管理是用new和delete完成。动态内存管理经常出现两种问题:忘记释放内存造成内存泄露还有指针引用的内存的情况下释放内存,造成引用非法内存指针智能指针负责自动释放所指向的对象1.2 构造函数如何判断构造函数的执行结果?构造没有返回值不能通过返回值判断状态量,抛出异常?条件判断,例如构造函数的功能,如果涉及内...原创 2020-03-01 19:38:47 · 255 阅读 · 0 评论