2009-09-03 71 views
0

我只注意到与单个主窗口取约3 MB存储器(经由任务管理器)如何降低基于MingW的GUI应用程序的内存消耗?

我用开发 - C++和MinGW如编译器,和生成的窗口的应用程序经由项目一个简单的Win32 C基GUI应用程序的内存使用情况向导。

这是为什么呢?有什么办法可以减少它吗?

回答

1

找到一个API,它可以控制应用程序存储器组,

此代码可以显示在任务管理器更好的结果。

SetProcessWorkingSetSize(GetCurrentProcess(), (SIZE_T) -1, (SIZE_T) -1); 
0

任务管理器中的内存显示有多少内存窗口已分配给您的进程。它绝不反映你的程序实际使用了多少内存。如果您使用Dev-C++附带的Mingw,那么您可能需要尝试获取新版本的Mingw。 Dev-C++已经放弃了相当长的一段时间,所以捆绑的编译器已经过时了。

+0

好吧,我已经尝试过使用最新的mingw编译器的Code :: blocks。有没有办法控制windows分配的内存? – ukanth 2009-09-03 13:58:37

0

我还没有检查到与明的版本,但我们在这里确实发现,包括Windows.h增加19K 每个目标文件。我们采取了手动定义我们需要的一些东西来节省空间。

你可能想玩弄删除一些标题,看看你的EXE大小会发生什么。

+0

它确实只有windows.h头文件,非常简单的应用程序,使用CreateWindow创建单个窗口,而不是关于exe的大小,它关于分配用于运行exe的内存。 – ukanth 2009-09-03 14:04:14