结果:
分单线程和多线程进行测试,重复的内存分配与释放在实际使用中是不太可能的,为了模拟实际使用,通过随机数来确定分配内存大小,同时也通过随机数来确定分配与释放操作。在测试过程中限制最大分配大小为1024,目的是为了测试小内存块的分配情况对比。
内存池单线程测试结果
内存池多线程测试结果
进行多线程测试主要是测试多线程运行下,加锁给内存分配带来的影响,因此为了排除CPU的影响,测试采用的机器为16盒,16G内存的Linux服务器。
具体配置如下:
Intel(R) Xeon(R) CPU? ? ? ? ? E5630? @ 2.53GHz
stepping? ? ? ? : 2
cpu MHz? ? ? ? : 2527.084
cache size? ? ? : 12288 KB
------------------------------分割线------------------------------
将C语言梳理一下,分布在以下10个章节中: