岚天逸见

上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 77 下一页

2019年3月19日 #

C++标准库之string返回值研究

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

posted @ 2019-03-19 12:55 岚天逸见 阅读(261) 评论(0) 推荐(0)

2019年3月18日 #

Apache Thrift的C++多线程编程定式

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

posted @ 2019-03-18 19:22 岚天逸见 阅读(741) 评论(0) 推荐(0)

实战C++对象模型之成员函数调用

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

posted @ 2019-03-18 14:50 岚天逸见 阅读(1541) 评论(0) 推荐(0)

2019年3月14日 #

std::string的拷贝赋值研究

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

posted @ 2019-03-14 16:33 岚天逸见 阅读(4756) 评论(0) 推荐(0)

Raft知识图谱

摘要: 阅读全文

posted @ 2019-03-14 12:42 岚天逸见 阅读(195) 评论(0) 推荐(0)

REdis AOF文件结构分析

摘要: REdis-4.0之前的AOF文件没有文件头,而从REdis-4.0开始AOF文件带有一个文件头,文件头格式和RDB文件头相同。 REdis-4.0版本,如果开启aof-use-rdb-preamble(值为yes,5.0默认为yes,4.0默认为no),则AOF文件内容由三部分组成: 1) 文件头 阅读全文

posted @ 2019-03-14 12:38 岚天逸见 阅读(6357) 评论(0) 推荐(1)

2019年2月18日 #

使用Linux自带日志滚动工具logrotate滚动redis日志示例

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

posted @ 2019-02-18 10:48 岚天逸见 阅读(1875) 评论(0) 推荐(0)

2019年2月1日 #

源码分析MySQL mysql_real_query函数

摘要: 目录 目录 1 1. 前言 1 2. 调用路径 2 3. MAX_PACKET_LENGTH宏 2 4. DBUG_RETURN宏 3 5. COM_QUERY枚举值 3 6. mysql_query函数 3 7. mysql_real_query函数 3 8. mysql_send_query函数 阅读全文

posted @ 2019-02-01 15:38 岚天逸见 阅读(2984) 评论(0) 推荐(0)

2019年1月29日 #

源码解读Linux的limits.conf文件

摘要: 目录 目录 1 1. 前言 1 2. PAM 2 3. pam_limits 2 4. limits.conf的由来 3 5. 模块入口函数 4 6. 解析limits.conf 6 7. 生效limits.conf 7 8. systemctl和systemd 8 9. 总结 10 附1:资源 1 阅读全文

posted @ 2019-01-29 19:52 岚天逸见 阅读(1783) 评论(0) 推荐(0)

C++中的return和exit区别

摘要: 在main函数中,return和exit经常混用,两者的一个区别:return会执行statck unwinding,而exit不会。如果触发了信号,exit也同样不会做stack unwinding,除此之外异常如果没有相应的catch,也同样不会有栈展开(stack unwinding)。 原因 阅读全文

posted @ 2019-01-29 11:23 岚天逸见 阅读(914) 评论(0) 推荐(0)

上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 77 下一页

导航