06 2012 档案

摘要:#include #include int main(){ int m = 0; int *p = &m; int i =0; int n = 1; struct timeval time1, time2; m = 0; gettimeofd... 阅读全文
posted @ 2012-06-24 18:37 白帆mvp 阅读(176) 评论(0) 推荐(0)
摘要:下面这个代码用两个双层循环遍历了一个二维数组里所有的元素,以我自己机器的测试 上面那个循环耗时基本为下面的一半,两个循环的时间复杂度相同,为什么会有这么大的差别?首先要明白的是不管是几维数组,他们都是用一块地址连续的内存来存储所有的元素,而内存布局的顺序是一整行接着下一个整行排列,第一个循环是一行一... 阅读全文
posted @ 2012-06-24 18:17 白帆mvp 阅读(338) 评论(0) 推荐(0)
摘要:innodb里实现了2类很常用的互斥量,一个是mutex_t(独占形式),另外一个是rw_lock_t(读共享,写独占),innodb对其进行了改造,以适应数据库的性能要求。因为并发是innodb主打的看点,所以这两类互斥量在整个代码里面占了很重要的地位(特别是mutex_t,几乎贯穿了整个体系)... 阅读全文
posted @ 2012-06-09 14:27 白帆mvp 阅读(1251) 评论(0) 推荐(0)
摘要:innodb的mem/mem0pool.cc实现了一个高效的内存池,该模块采用的是经典的Buddy memory allocation算法(我觉得innodb并未对原算法进行什么改动)来实现内存块分配,回收,合并和拆解,这样做的一个显著优点是尽量避免了内存碎片,使得内存分配效率得到提升。介绍一下它的... 阅读全文
posted @ 2012-06-02 15:05 白帆mvp 阅读(451) 评论(0) 推荐(0)