- 博客(9)
- 资源 (46)
- 收藏
- 关注
转载 C++类内存分布
书上类继承相关章节到这里就结束了,这里不妨说下C++内存分布结构,我们来看看编译器是怎么处理类成员内存分布的,特别是在继承、虚函数存在的情况下。工欲善其事,必先利其器,我们先用好Visual Studio工具,像下面这样一步一步来: 先选择左侧的C/C++->命令行,然后在其他选项这里写上/d1 reportAllClassLayout,它可以看到所有相关类的内存布局,如果写上/d1 re...
2018-06-29 20:54:38 209
转载 C++何时会帮忙合成default constructor
最近在看《深度探索C++对象模型》,学到了很多东西。。。C++新手一般有两个常见的误解:1.任何class如果没有定义default constructor,就会被合成出一个来。2.编译器合成出来的default constructor会显示设定“class 内每一个data member的默认值”注意:以上两个说法都是错误的!编译器只会在以下4种情况,并且clas...
2018-06-28 14:20:20 260
转载 LevelDB : AtomicPointer
leveldb里有个AtomicPointer类:inline void MemoryBarrier() { // Seehttp://gcc.gnu.org/ml/gcc/2003-04/msg01180.html for a discussion on // this idiom. Also seehttp://en.wikipedia.org/wiki/Memory_ordering...
2018-06-21 15:05:21 192
转载 理解 Memory barrier(内存屏障)
发布于 2014 年 04 月 21 日2014 年 05 月 15 日 作者 name5566参考文献列表:http://en.wikipedia.org/wiki/Memory_barrierhttp://en.wikipedia.org/wiki/Out-of-order_executionhttps://www.kernel.org/doc/Documentation/memory-bar...
2018-06-21 13:56:32 312
转载 TCP状态转换图详解
在前面,已经介绍了TCP协议的三路握手和四次挥手。如下图所示,TCP通信过程包括三个步骤:建立TCP连接通道(三次握手)、数据传输、断开TCP连接通道(四次挥手)。 这里进一步探究TCP三路握手和四次挥手过程中的状态变迁以及数据传输过程。先看TCP状态状态转换图。 ...
2018-06-08 20:02:29 2476
转载 volatile用法详解
我在开发中也常常遇到这个问题,发现通常用在两个方面,一方面是对硬件寄存器或固定内存的访问,一般要用到,这就是我们常常在寄存器的头文件常常看到的,另一个就是在多线程,或主程序和中断共享,全局变量常常用到。言归正传,看看老外是怎么说的Introduction to the Volatile Keyword认识关键字Volatile The use of volatile is poorly under...
2018-06-07 14:17:09 550
转载 Leveldb源码分析基础 1-22
见 https://blog.csdn.net/sparkliang/article/details/8567602
2018-06-03 18:22:35 202
转载 leveldb源码剖析---缓存系统
通过前面的分析可以知道,leveldb为了提高写的性能,牺牲了部分的读性能。最差的情况可能需要遍历各个level中的每个文件。为了缓解读性能,leveldb引入了缓存机制,当然,版本信息中包含各个level的文件元信息在一定程度上也可以提高读性能。leveldb提供的缓存系统的底层数据结构是一个开链哈希class ShardedLRUCache : public C...
2018-06-03 18:21:02 330 1
转载 leveldb源码剖析----compaction
根据前面的分析,背景线程的主体工作在BackgroundCompaction函数中完成。这个函数主要完成以下两个工作:如果imm_非空,则将imm_写入到磁盘中生成新的sstable文件对level中的文件进行合并。合并的目的主要是避免某个level中sstable文件过多,并且可以通过合并的过程删除掉过期的key-value...
2018-06-01 16:17:13 621
《TCP IP详解》全三卷 中文有书签 不分割
2014-07-07
提高C++性能的编程技术.pdf
2014-04-09
改变未来的九大算法,完整扫描版
2014-04-08
JavaScript、Css2.0、Css3.0、Jquery、html5等各种中文手册打包放送
2014-04-04
项目管理七杯茶,完整扫描版
2014-04-03
W3School离线手册(2014.3.24)
2014-04-03
DELPHI XE5 UP2 破解
2014-04-03
Google官方下拉刷新组件SwipeRefreshLayout
2014-04-03
软件管理沉思录:SEI的项目管理、人际沟通和团队协作要诀,完整扫描版
2014-04-03
控制台小游戏之《推箱子》及关卡地图编辑器
2014-04-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人