您好,欢迎来到华佗小知识。
搜索
您的当前位置:首页Linux多线程服务端编程 使用muduo C++网络库 学习笔记 日志log

Linux多线程服务端编程 使用muduo C++网络库 学习笔记 日志log

来源:华佗小知识

代码来自陈硕开源代码库 muduo中

 主要是在内存中自己开辟了一块内存 然后对基本数据的输入 进行了定义

self& operator<<(short);
self& operator<<(unsigned short);
self& operator<<(int);
self& operator<<(unsigned int);
self& operator<<(long);
self& operator<<(unsigned long);
self& operator<<(long long);
self& operator<<(unsigned long long);
self& operator<<(const char* str);
self& operator<<(const unsigned char* str);
self& operator<<(const std::string& v);

 

相比C++自带的STREAM 没有继承及太多改写 

在胜任基本的输入输出任务 自然效率会高一些

然后基本的输出方面 需要记录写入的时间 日志级别和进程ID和名字等

采用生产消费者模式 多个产生日志的生产者产生日志投入队列,然后仅仅一个消费者写入BUFFER

BUFFER采用两个缓存写入日志进行替换,一个接受消费者写入 一个将日志序列化到磁盘中。

如果速度实在太快 可能考虑再创建一个到两个BUFFER 实践中这种情况应该极小概率发生。

然后日志的根据时间和文件的体积的临界值可自动创建新的日志文件

转载于:https://www.cnblogs.com/itdef/p/5421956.html

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo0.cn 版权所有 湘ICP备2023017654号-2

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务