1. 思想:将内存池分为块,首先定义每个块的字节数,和内存池的总字节数,用总字节数除以每个块的字节数得到块数 2. 内存池,实际上就是一个数组 3. 内存管理块,实际也是一个数组,总元素个数为内存块数,每个元素对应一个内存块,该元素非零时表示该内存块没有被占用 4. 将第一步中的信息用数组保存起来, ...
分类:
其他好文 时间:
2016-11-04 23:52:25
阅读次数:
381
一、nginx内存池的使用
nginx对内存采用内存池对内存进行管理。即先开辟一个内存池空间,之后就从内存池中获取空间了,避免频繁的调用malloc/free操作。如何内存池空间不够,才会调用mall...
分类:
其他好文 时间:
2016-11-01 16:52:20
阅读次数:
291
本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目。 笔者将分为以下三个部分向大家介绍(每日更新): 1、实现基本通信框架,包括对游戏的需求分析、设计及开发环境和通信框架的搭建; 2、实现网络底层操作, ...
分类:
编程语言 时间:
2016-10-22 23:40:39
阅读次数:
305
OTL的流缓冲池 一般来讲,流一般作为一个局部的变量被使用,当使用完毕后就立刻关闭,如果需要再次使用就需要再次的声明变量,如此循环。OTL流的缓冲池(内存池)是一个解决以往的流性能低下的一个机制。当流被关闭后,实际上流的相关变量被保存在一个流缓冲池里面,以便再利用。 每一个流在解析SQL或与数据库层 ...
分类:
其他好文 时间:
2016-09-24 16:03:06
阅读次数:
108
先从较浅的层面来说,Python的内存管理机制可以从三个方面来讲 (1)垃圾回收 (2)引用计数 (3)内存池机制 一、垃圾回收: python不像C++,Java等语言一样,他们可以不用事先声明变量类型而直接对变量进行赋值。对Python语言来讲,对象的类型和内存都是在运行时确定的。这也是为什么我 ...
分类:
编程语言 时间:
2016-09-16 15:34:17
阅读次数:
203
内存池技术的原理与实现 序言 最近在网上看到了几篇篇讲述内存池技术的文章,有一篇是有IBM中国研发中心的人写的,写的不错~~文章地址在本篇blog最后。原文的讲述比我的要清晰很多,我在这只是把我的一些理解和遇到的一些问题和大家分享一下~~ 一、为什么要使用内存池技术呢 主要有两个原因:1、减少new ...
分类:
其他好文 时间:
2016-09-13 13:17:05
阅读次数:
214
做这个内存池主要是为了完成一道面试题,题目在代码中。 代码 ...
分类:
编程语言 时间:
2016-09-04 11:30:53
阅读次数:
258
__memp_alloc() 注: MPOOL_ALLOC_SEARCH_DYN 没有 出现在 bdb document上, 也没出现在 除了mp_alloc外的代码里. 先删了 以便代码清楚. 按 mpool初始化代码来看, 一个hash bucket上 假定为 2.5个buffer. 查找有 三 ...
分类:
数据库 时间:
2016-08-17 14:03:22
阅读次数:
236
priority based lru in src/mp/mp_fget.c, __memp_fget(), 初始化 一个page buffer时, 设置其 priority: in src/mp/mp_fget.c, __memp_fput(), 对一个page buffer做put, 使其ref ...
分类:
数据库 时间:
2016-08-17 13:59:21
阅读次数:
161
内存池的实现 最近这两天研究了一下SGI STL中的内存池, 网上对于这一块的讲解很多, 但是要么讲的不完整, 要么讲的不够简单(至少对于我这样的初学者来讲是这样的...), 所以接下来我将把我对于对于SGI STL的理解写下来, 方便以后查阅同时也希望能够对像我一样刚刚接触C++的初学者提供一些帮 ...
分类:
其他好文 时间:
2016-08-12 01:00:54
阅读次数:
179