社区
C#
帖子详情
关于.net 中内在占用过大问题。
Qim
2006-04-26 03:46:33
普通的一个windows Form 一编译运行就会点用7M以上的内存。当改变WindowState为Minimized时却仅占用1M多一点点的内存。哪位高手能解释一下。如何手动控制内存的释放?多谢多谢。
...全文
352
21
打赏
收藏
关于.net 中内在占用过大问题。
普通的一个windows Form 一编译运行就会点用7M以上的内存。当改变WindowState为Minimized时却仅占用1M多一点点的内存。哪位高手能解释一下。如何手动控制内存的释放?多谢多谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
21 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aSalt
2006-04-27
打赏
举报
回复
....
HengHuan
2006-04-27
打赏
举报
回复
呕,来帮顶
sugarsupper
2006-04-27
打赏
举报
回复
都是这样的了
diandian82
2006-04-27
打赏
举报
回复
又不会死机,怕什么?
stanly20000
2006-04-27
打赏
举报
回复
这种钻牛角尖的问题还在讨论啊.
Qim
2006-04-27
打赏
举报
回复
UP
Qim
2006-04-27
打赏
举报
回复
楼上达人?说的太轻松了吧?
现在不是说有没有必要的问题。
而是为什么它会占用本不应该占用的内存???为什么刚开始的时候占用最大,最小化之后会占用很小,从最小化恢复normal后仍占用很小。如果我运行一个程序,不把它最小化,难道那些刚开始运行占用的内存它会一直占有????
引用:
7m是可以理解的,.NET提供的窗体资源比较丰富,内存自然要耗得多一点;还需要有CLR再入后占用的内存(提供多个不同线程来维护应用程序)。当最小化之后,内存占用变少是windows机制,当一个程序处于inactive状态的时候,它的物理内存会被压缩,一部分数据会被缓存到硬盘,实际也就是虚拟内存。
可是当一个.net程序从最小化再变为最大化时,所占内存还是那么少.
这跟windows机制应该也有关系.
非托管程序也有这种现象,只是没有这么明显罢了.
可能是托管程序刚运行时需要额外的内存,而运行起来以后这部分内存就可以释放了.
-渔民-
2006-04-27
打赏
举报
回复
這些都是老生常談了,覺得沒有必要,硬件也要和軟件一起發展的,水高船漲
Qim
2006-04-27
打赏
举报
回复
多谢以上达人。
To Hemee() 如何手动更改inactive状态?
我想实现的只是把它占用的内在降的小一些。仅建一个空的Form,运行就会占用这么大的内存,总不是一件好事吧。大伙可以自己试试。
不只是内存条长不长价的问题。
huangguangdou
2006-04-27
打赏
举报
回复
关注
mmcl
2006-04-26
打赏
举报
回复
可是当一个.net程序从最小化再变为最大化时,所占内存还是那么少.
这跟windows机制应该也有关系.
非托管程序也有这种现象,只是没有这么明显罢了.
可能是托管程序刚运行时需要额外的内存,而运行起来以后这部分内存就可以释放了.
Hemee
2006-04-26
打赏
举报
回复
7m是可以理解的,.NET提供的窗体资源比较丰富,内存自然要耗得多一点;还需要有CLR再入后占用的内存(提供多个不同线程来维护应用程序)。当最小化之后,内存占用变少是windows机制,当一个程序处于inactive状态的时候,它的物理内存会被压缩,一部分数据会被缓存到硬盘,实际也就是虚拟内存。
Kshatriya
2006-04-26
打赏
举报
回复
你打算手动释放什么?把窗体的控件都销毁了?呵呵.
Kshatriya
2006-04-26
打赏
举报
回复
7M还算占用内存过大?
代码蜗牛sky
2006-04-26
打赏
举报
回复
这问题已经讨论过很多次了,一直没有实质性的解决方案
yuwen16
2006-04-26
打赏
举报
回复
System.GC.Collect(); 也不能立即释放
System.GC.Collect(2);会释放的快些。
Qim
2006-04-26
打赏
举报
回复
当改变WindowState为Minimized时,系统做了些什么呢?高手指点?
stanly20000
2006-04-26
打赏
举报
回复
我觉得只要内存不涨价,这个帖子可以结了.
卧_槽
2006-04-26
打赏
举报
回复
不知道你的form用来干什么了。
估计是加载的东西过多,Minimized得时候小说明了这点
yr_127
2006-04-26
打赏
举报
回复
System.GC.Collect(); 回收资源
加载更多回复(1)
VS
.NET
2005 C#webprintpreview打印预览控件
处理各种文字信息,主要分标题信息、普通文字信息、文字段落信 息,根据当前坐标位置显示各种样式的文字信息,自定义文字的样 式与颜色、字体大小。可以满足各种复杂的文档效果的打印预览
DataGridView分页控件标准版VB2008源代码及DataGridView178页详细使用说明
DataGridView分页控件标准版VB2008源代码及DataGridView178页详细使用说明
Reflector_jb51_doc.rar
Reflector 用于开发C#的工具,可以反编译C#的程序和库!
CLR via C# 第4版.pdf
CLR via C# 第4版 PDF版。110MB太大所以提供百度云链接,一共700多页。欢迎下载。CLR via C# 第4版 PDF版。110MB太大所以提供百度云链接,一共700多页。欢迎下载。
Matlab-EMD工具箱 + 详细安装方法
Matlab-EMD工具箱 + 另附详细安装方法,亲手验证可以使用。
C#
111,120
社区成员
642,545
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章