自己写的内存池Slabs
来源:互联网 发布:网络学校有哪些专业 编辑:程序博客网 时间:2024/05/01 19:58
看memcached的源码写的,虽然很粗糙,但是基本思想还是有的,自娱自乐,后期不断改进。
#include <stdio.h>#include <stdlib.h>#include <string.h>struct st{ void * start; void * end; char ptr[10];};struct it{ struct it* prev; struct it* next; int key; int value; int used;};void add(struct it* t,const int data){ while(t->next) { if(!t->used){ t->value=data; t->used=1; return; } t++; }}void del(struct it* t,const int data){ while(t->next) { if(t->used&&t->value==data){ t->used=0; t->value=0; return; } t++; }}main(){void * slabs=malloc(200);struct st* pst;struct it* pit;int i,k1,k2,k3;memset(slabs,0,200);pst=(struct st*)slabs;pit=(struct it*)(pst+1); pit->prev=0; pit->key=1; pit->value=0; pit->used=0;for(i=1;i<10;i++){ pit=pit+1; pit->key=i+1; pit->value=0; pit->used=0; pit->prev=pit-1; pit->prev->next=pit; pit->next=NULL;}pit=(struct it*)(pst+1);k1=11;k2=22;k3=33;add(pit,k1);add(pit,k2);add(pit,k3);del(pit,k2);return 0;}
- 自己写的内存池Slabs
- slabs 内存分配原理
- 自己写的内存池效率评测
- 自己写的内存池管理程序
- memcached内存管理(1) ----------------slabs
- 我自己写的内存池,源码发布
- 如何写自己的内存复制函数?
- 自己写的内存分配算法
- 自己写的共享内存hash链表
- 自己写的数据库连接池
- 自己写的数据库连接池
- 自己写的数据库连接池
- 自己写的几个ARM汇编内存操作函数
- 自己写的共享内存链表CAlgShareList
- 自己写的一个内存修改库CheatLibrary
- 实现自己的内存池
- 自己写的c3p0的数据库连接池
- Memcached Slabs
- dao层的中文数据写入mysql后变成乱码
- Ubuntu下安装pdf阅读器
- 两篇很牛的vim使用技巧
- 编程思想和代表这些思想的名词
- 隐藏在手机中的第二个操作系统
- 自己写的内存池Slabs
- 多文件编辑(sp(横版)和vs(纵版))很强大
- 善良公社项目总结之如何从前台向后台传输数据
- 软件开发的愚公移山
- Jquery EasyUI +Ajax +Json +一般处理程序 实现数据的前台与后台的交互 --- 善良公社项目
- 动态获取下拉列表并回显
- 第13周项目4-递归求奇数连乘的积
- httpclient 入门
- UIViewController的误用