用VB写一个只有几行代码的程序,居然占到5M内存。那请问一下用过VC++和Delphi的朋友们,用它们写的小程序启动后占用多少内存啊?用VC++和Delphi一般般选择静态链接还动态链接?选动态如果机子上没有该软件所要的动态链接库(如Delphi的VCL库,VB就经常碰到没有MSVBVM60.dll),那不是就挂了?用静态链接文件又太大。小弟没用过VC++和Delphi编译链接过,还请用过的朋友们说一下,来考虑是不是学习一种其它的开发工具。
解决方案 »
- VB对本地数据库操作的问题
- Google Treasure Hunt 2008----散分
- treeview控件问题??
- 水晶报表的问题,难道没人懂吗!!!
- 调用Win32 API打开的定位文件夹的对话框为什么能定位到文件?
- 我想从VB中调用WORD打开DOC文件,该如何做?
- 如何用winsock发送这些奇怪的数据,急急几。
- 用VB如何实现单向链表和双向链表?
- 我现在想学习用VB面向对象的程序开发,不知道哪儿有这方面的资料或程序代码可以学习,请大家帮帮忙告诉我!!谢谢!!!
- 在bitblt函数的使用过程中的问题讨教!急!!
- 求救:在VB中如何向EXCEL中插入图片?
- 求救:在VB中如何向EXCEL中插入图片?帮帮我。谢谢
如:
rs.close
set rs = nothing
------------------------------------------------
软件发布时你要打包作安装啊!不准备安装你就用静态联结吧
我看有人做的程序打包后也就几百K或1M嘛。
用Set rs=nothing后内存并不能释放。
但回过头来看看,目前机器的内存都起码上百兆的,程序大点也问题不大吧。
100多MB那个是用delphi写的还有一次用VB写的,刚开始只用了30多MB的内存,运行了一天后,内存就吃到了700MB……好像对于数组VB是有缺陷,我每次都正常释放了数组,但是还是要吃,似乎是局部变量每次不释放?不敢再想了
换了吧。 我受够了VB的Dll地获.
vb运行实际上主要内存在vb的主要支持动态库方法,可以说是起步价,但实际上有许多程序也运行着同样的动态链接库,这时就没什么了.
至于vb运行占内存会越来越多,那就是处理不对了,vb的autoredraw=true是需要占内存的,其实是图形,而且对窗体的调用也是占内存的,必须得set form1=nothing,否则原窗体包括函数仍占用内存.直到程序结束.
对于数组而言,vb处理数组的速度应该说是很快的,正确释放数组是必要的,应尽可能使用局部数组,使用完毕请重新分配.我有个表格使用vb数组,都是上万的数组,运行几天都没见什么.更好的方式是使用API来分配内存.内存能得到及时的施放.
vb占用内存,使用得好的话,和dephi差不多,其实dephi和vc是真正占用内存的高手,他们的程序实实在在地占用内存,它们为什么快的原因之一也在这里.而vb对内存的控制就差一点了,基本上运行时调入,一用完就又调出硬盘分页中去了,频繁得执行一个过程,就频繁的调入调出,速度就可想而知了.vb.net已经更新很多了,速度也快很多,其实编译后执行的中间码和C#差不多.
thirdapple(.:RNPA:.陨落雕-鍾意吊帶MM)
那个100M的
你可以尝试像我一样写一个无窗口的数据流处理程序,启动时VC的需要450M,而VB写的(移植代码,测试用)反而只要415M左右。当然,性能是大不一样的……不过功能都齐了。
VB的内存处理效率低在管理上,如果你一开始就好好分配你程序需要的内存空间,那么到后来反而会占用略微少一点点的内存(这个原因……我就不是太清楚了),如果全部依赖动态分配,那么等着看内存占用的数值往上飚吧。
因为这些控件里有大量的变量 只是我们用不到那些变量罢了
最好少用控件 或者用自己写的控件 要什么功能 就写什么功能
我最近使用了WMP写的MP3播放器 不过他的功能都可以写个媒体平台了
而我只用到了MP3解码的部分 你说 是不是很浪费啊