Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6405735
  • 博文数量: 567
  • 博客积分: 13065
  • 博客等级: 上将
  • 技术积分: 10046
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-26 16:44
个人简介

推荐: blog.csdn.net/aquester https://github.com/eyjian https://www.cnblogs.com/aquester http://blog.chinaunix.net/uid/20682147.html

文章分类

全部博文(567)

发布时间:2019-03-19 12:50:17

先说结论(不一定适用所有环境):1) GCC默认开启了返回值优化(RVO),除非编译时指定“-fno-elide-constructors”;2) 现代C++编译器一般都支持返回值优化;3) string的拷贝构造和拷贝赋值是浅拷贝。 测试环境:1) gcc (GCC) 4.8.52) g++ (G.........【阅读全文】

阅读(104148) | 评论(0) | 转发(0)

发布时间:2019-03-18 19:17:47

 Facebook贡献给Apache的开源RPC组件Thrift有着广泛的应用,C++中使用Thrift也十分普遍,但由于Thrift的Handler会被多个线程调用,因而多线程中应用并不直接的友好,利用C++的“thread_local”特性或GCC的“__thread”特性可化简这一问题。看具体实例,有一Thrift service:XService,编译后生成接口文.........【阅读全文】

阅读(94301) | 评论(0) | 转发(0)

发布时间:2019-03-18 14:45:14

先说结论:C++的类成员函数和C函数实质是一样的,只是C++类成员函数多了隐藏参数this。通过本文的演示,可以看见这背后的一切,完全可C函数方式调用C++类普通成员函数和C++类虚拟成员函数。 为了实现C函数方式调用C++类成员函数,准备两个文件:。1) 被调用的C++类成员函数源代码文件aaa.c.........【阅读全文】

阅读(80283) | 评论(0) | 转发(1)

发布时间:2019-03-14 16:28:39

说明:以下涉及的std::string的源代码摘自4.8.2版本。结论:std::string的拷贝复制是基于引用计数的浅拷贝,因此它们指向相同的数据地址。// std::string类定义typedef basic_string string;templateclass basic_string{private:    // _Al.........【阅读全文】

阅读(78175) | 评论(0) | 转发(0)

发布时间:2019-03-14 12:38:50

......【阅读全文】

阅读(5270) | 评论(0) | 转发(0)

发布时间:2019-03-14 12:34:05

REdis-5.0之前的AOF文件没有文件头,不管是REdis-5.0之前还是REdis-5.0,它们的AOF文件体内容都如下图所示:从REdis-5.0开始,AOF有文件头,目的是支持同时加载RDB和AOF文件。AOF文件头和RDB文件头基本相同,但RDB文件头多了三个字段。先看AOF和RDB通用部分的文件头内容:1) 头5字节固定为REDIS2)&.........【阅读全文】

阅读(2863) | 评论(0) | 转发(0)

发布时间:2019-02-18 10:45:50

截至到redis-5.0版本,redis仍然不会自动滚动日志文件,如果不处理则日志文件日积月累越来越大,最终将导致磁盘满告警:# ls -lhtotal 12G-rw-r--r-- 1 redis redis 8.5G Feb 18 10:26 redis-6379.log.........【阅读全文】

阅读(2276) | 评论(0) | 转发(0)

发布时间:2019-02-01 15:35:27

目录目录11. 前言12. 调用路径23. MAX_PACKET_LENGTH宏 24. DBUG_RETURN宏 35. COM_QUERY枚举值 36. mysql_query函数 37. mysql_real_query函数 38. mysql_send_query函数 49. simple_command宏 510. MYSQL_METHODS结.........【阅读全文】

阅读(3873) | 评论(0) | 转发(0)

发布时间:2019-01-29 19:49:51

目录目录11. 前言12. PAM23. pam_limits24. limits.conf的由来 35. 模块入口函数46. 解析limits.conf 67. 生效limits.conf 78. systemctl和systemd 89. 总结10附1:资源 11附2:编译ninja 11附3:使用meson.........【阅读全文】

阅读(34054) | 评论(0) | 转发(0)

发布时间:2019-01-29 11:21:27

 在main函数中,return和exit经常混用,两者的一个区别:return会执行statck unwinding,而exit不会。如果触发了信号,exit也同样不会做stack unwinding,除此之外异常如果没有相应的catch,也同样不会有栈展开(stack unwinding)。原因是C++编译器只会在遇到“}”或“return”时,才会安插.........【阅读全文】

阅读(6783) | 评论(0) | 转发(0)
给主人留下些什么吧!~~

Aquester2014-12-11 21:29

lojunren:强烈希望博主将mooon项目迁往github

https://github.com/eyjian/mooon

回复  |  举报

Aquester2014-03-24 12:51

lojunren:强烈希望博主将mooon项目迁往github

嗯,建议不错

回复  |  举报

lojunren2014-03-20 14:56

强烈希望博主将mooon项目迁往github

回复  |  举报

Aquester2014-01-15 11:02

yuanxy2013:LZ,你的基于C++的纯面向对象的通用高性能大并发TCP-SERVER/CLIENT开发框架实践系列之《前言篇》,《基础篇》写得非常棒,但是《服务器篇》、《客户端篇》却找不到,恳请楼主赐读。

已经实现一个server框架,并有相关技术文档,在mooon中,你可以svn下载代码看看,文档在doc子目录下

回复  |  举报

yuanxy20132014-01-14 14:48

LZ,你的基于C++的纯面向对象的通用高性能大并发TCP-SERVER/CLIENT开发框架实践系列之《前言篇》,《基础篇》写得非常棒,但是《服务器篇》、《客户端篇》却找不到,恳请楼主赐读。

回复  |  举报
留言热议
请登录后留言。

登录 注册