我刚刚注意到基于win32 C的简单GUI应用程序的内存使用情况,单个主窗口占用大约3 MB内存(通过任务管理器)
我使用Dev-c ++和Mingw作为编译器,并通过项目向导生成了Windows应用程序。
为什么会这样?有没有办法减少它?
答案 0 :(得分:1)
找到一个可以控制应用程序内存集的API,
此代码可以在任务管理器中显示更好的结果。
SetProcessWorkingSetSize(GetCurrentProcess(), (SIZE_T) -1, (SIZE_T) -1);
答案 1 :(得分:0)
任务管理器中的内存显示已为您的进程分配了多少内存窗口。它决不会反映您的程序实际使用了多少内存。如果您使用Dev-C ++附带的Mingw,那么您可能想尝试使用新版本的Mingw。 Dev-C ++已经被放弃了很长一段时间,因此捆绑的编译器已经过时了。
答案 2 :(得分:0)
我没有用Ming的版本来检查这个,但是我们在这里发现,包括Windows.h在内的每个目标文件增加了19K 。我们采用手动定义我们需要的一些东西来节省空间。
你可能想要删除一些标题,看看你的exe大小会发生什么。