用MFC做了一个基于HTML类的程序,其实只是在里面加了两个类,添加的代码也就1000行,用来玩网页游戏的。但是程序一启动,内存消耗就有100多M,这个虽然不算太多,但是多开几个这个程序的话,就吃不消了,不知道有什么办法减小内存开销?另一个问题是,我在程序运行时,不进行什么操作的话,内存使用量没有什么变化,但是一旦我在上面进行操作(Flash的游戏,就是点击和鼠标移动操作),内存开销会变大,一般对达到300+M,最多一次达到500+M的内存占用了,严重影响性能了,不知道这个是什么原因?MFC的HTML项目会对资源进行管理吗?
解决方案 »
- 非模态对话框 toolbar的状态怎么更新
- 将Editbox的内容逐行写入到text文件,text文件名能添加日期戳
- 【散分】最近几个月一直没有来,抱歉!兼散分!
- 请问关于一个空间的点集
- CJLibrary的CJ608Libd.lib的连接问题 ,高手求救!!!!!
- 请高手帮我看一下
- vc疑惑,过来者请进
- 由于某种原因我想将自己写程序将整幅WEB 页存储为图像,想听听大家的意见,(是不是要用到IWebBrowser2)??
- 如何让一个窗口不可以移动?而且总在最前(象oicq)?(用api)答对一个就给分!!!!!!!!!!!!
- help!complex类的abs()怎么用?
- 如何理解指向指针的引用?
- 自动关闭内存不能读/写对话框
我这个程序为了和网页游戏保持同步,使用了比较多的Sleep,我设定的时间是20小时,20小时后程序结束,但是一般在6、7个小时内存占用就好几百兆了。如果我把Sleep全部注释掉,程序执行完所有的代码只要几秒钟,内存和CPU根本没有用多少。如果我不把游戏界面打开,直接执行我的代码的话也没有什么问题。而且程序里没有动态创建的东西,都是一开始就初始化好了一些对象,后面使用就行了。现在我觉得是flash的原因,我用360浏览器玩这个游戏,内存占用也会达到3、4百M,这是在操作频繁的情况下。但是一旦停止操作,过一会儿,这部分内存被释放掉,内存占用降到100M左右。而我用MFC写的这个,不知道是由于对内存管理不够好,还是由于flash加载的东西一直被使用,没有释放掉,才导致这个问题。还有一个问题,几个小时以后,CPU占用也变高了很多。
其实很多flash游戏很垃圾的,怪不得乔布斯不支持
我在玩的开心网某flash,把我的双核2g的cpu都能占满,还是用的chrome浏览器
现在可以肯定不是我的程序问题,而是MFC生成的项目对flash管理不好,申请的空间不释放。我用其他360,世界之窗虽然有时也会开销比较大,但是一空闲空间就释放了。我的这个程序,空闲的时候也不释放,导致占用越来越多。可能这个flash本身也有问题吧。