mimalloc在windows上的编译和使用

本文介绍了微软开发的mimalloc内存分配器,包括其设计理念、编译过程、动态链接库导入方法,以及如何覆盖原生malloc。详细步骤展示了如何在项目中集成并优化内存使用性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mimalloc介绍

mimalloc是微软开发的具有优异性能特征的通用分配器。最初由Daan Leijen为Koka和Lean语言的运行时系统开发

mimalloc编译生成动态链接库

1.下载mimalloc代码,在vs中打开(选择打开CMake文件),然后打开CMakeLists.txt:
在这里插入图片描述
在这里插入图片描述
然后在项目根目录下会生成CMakeSettings.json文件,可以直接进行编辑,也可以点击json文件进入CMake设置
在这里插入图片描述
这里配置类型选择release版本就行

另外针对CMakeList.txt文件,json也提供了可视化的对选项进行修改的界面:
在这里插入图片描述

设置好参数后,点击“生成”->“全部生成”就可以了:
在这里插入图片描述

生成后的文件如下:
在这里插入图片描述

2、另一种生成方式:
在这里插入图片描述
打开\mimalloc-master\ide\vs2019\mimalloc.sln,点击“生成”即可:
我理解就是通过这种方式已经构建好了项目,但是通过上面的方式可以调整参数

mimalloc动态链接库的导入

mimalloc官网介绍了mimalloc的覆盖malloc的操作:
在这里插入图片描述
对于项目,需要导入mimalloc-override.dll和mimalloc-redirect.dll两个动态链接库,并且mimalloc-redirect.dll依赖于mimalloc-override.dll,确定能够使用mimalloc覆盖原来的malloc操作

所以将三个文件复制到main同目录下
在这里插入图片描述

然后将mimalloc的include导入到项目里面:
在这里插入图片描述

在项目中,点击头文件添加现有项,并包含所有头文件:
在这里插入图片描述

同样设置project属性,设置头文件include目录:
在这里插入图片描述
最后在链接器处设置附加依赖项:
在这里插入图片描述

这时所有的工作就做完了,运行test程序可以得到结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值