社区
C#
帖子详情
C# winform 内存大
aikeli1234567
2010-04-01 04:34:29
现在做图片移动合成软件,图片很大,而且很多,随着读取图片的增加,程序所占的内存就不断增加,等达到1,6000,0000K 的时候,程序崩溃,报出内存不足,哪位高手有什么解决方法?最好有代码
...全文
206
21
打赏
收藏
C# winform 内存大
现在做图片移动合成软件,图片很大,而且很多,随着读取图片的增加,程序所占的内存就不断增加,等达到1,6000,0000K 的时候,程序崩溃,报出内存不足,哪位高手有什么解决方法?最好有代码
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
21 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zkwangbb
2010-04-02
打赏
举报
回复
Marshal.ReleaseComObject(obj);
obj = null;
这个释放的是什么对象!!!
andyleec
2010-04-02
打赏
举报
回复
[Quote=引用 12 楼 foxdave 的回复:]
图片都写内存里了吧? 能不能分批地整 不一下全搞了
[/Quote]
同意这个up
鸭梨山大帝
2010-04-02
打赏
举报
回复
X86下,没有开启/3GB的时候,单一进程内存超过1.7G就会报内存错误.
这个是架构限制的.
另外,现实中的一般应用不会一次使用内存超过1.7G的,超过这个数就要考虑分而治之了.
lovelan1748
2010-04-02
打赏
举报
回复
[Quote=引用 1 楼 xyq1986 的回复:]
看看是滞有内存泄漏情况,该dispose的就dispose,该用using的就用using
[/Quote]
UP
zhushoudong
2010-04-02
打赏
举报
回复
c# 一样可以的
铛铛
2010-04-02
打赏
举报
回复
很不幸,你用了c#,没办法的
zhushoudong
2010-04-02
打赏
举报
回复
你可以分开来做 用线程去一批批的处理,然后用了一批释放一下 这样就好多了
[DllImport("kernel32.dll")]
private static extern bool SetProcessWorkingSetSize(
IntPtr process,
int minSize,
int maxSize
);
private static void FlushMemory()
{
GC.Collect();
GC.WaitForPendingFinalizers();
if (Environment.OSVersion.Platform == PlatformID.Win32NT)
SetProcessWorkingSetSize(System.Diagnostics.Process.GetCurrentProcess().Handle, 20, 20);
}
但是这个方法 性能要求非常好的话 就另外考虑
王子样
2010-04-02
打赏
举报
回复
也要加载多大的图片啊?再怎么大也不至于弄成这样吧,代码是如何实现的?有优化过没?
Justin-Liu
2010-04-02
打赏
举报
回复
图片都写内存里了吧? 能不能分批地整 不一下全搞了
pansy5
2010-04-02
打赏
举报
回复
帮忙顶
KnowKjava
2010-04-02
打赏
举报
回复
[Quote=引用 5 楼 ahsun1987 的回复:]
用using吧,用完了就自动释放内存
[/Quote]顶
gsq_0912
2010-04-02
打赏
举报
回复
很想知道用代碼該怎麼寫?
aikeli1234567
2010-04-02
打赏
举报
回复
能用using的地方都该成了using,该dispose都dispose了,可是还是内存很大
myhotmail123
2010-04-02
打赏
举报
回复
用Delpi吧,,
Taiyangchen
2010-04-02
打赏
举报
回复
用using吧,用完了就自动释放内存
ginni215
2010-04-01
打赏
举报
回复
一个大的处理完成之后,就手动设置一下内存的最大值就可以了,效果类似于将程序最小化到工具栏,就是把内存占用量先转移到虚拟内存中,用的时候再取出来~
llf94632525
2010-04-01
打赏
举报
回复
应该是内存泄露,对象用完释放。
xyq1986
2010-04-01
打赏
举报
回复
看看是滞有内存泄漏情况,该dispose的就dispose,该用using的就用using
C#
Winform
windows运行
内存
释放
本项目“
C#
Winform
Windows运行
内存
释放”旨在解决计算机运行过程中
内存
占用过高导致的性能问题。通过编写这样的小程序,我们可以帮助用户管理他们的系统资源,提高计算机的响应速度和整体性能。 在Windows操作...
C#
Winform
报表系统
**
C#
Winform
报表系统详解**
C#
Winform
报表系统是一种在Windows桌面应用程序中用于数据可视化和信息展示的重要工具。它允许开发者创建交互式的、定制化的报表,将数据库中的复杂数据转化为用户友好的格式。本篇...
C#
Winform
动态调用C++和
C#
的Dll
本文将重点讲解如何在
C#
的
Winform
应用中动态调用C++和
C#
编写的DLL,并将DLL作为嵌入资源处理,避免因丢失DLL文件而引发的问题。 首先,我们需要理解DLL的工作原理。DLL文件包含可执行代码和数据,当一个应用程序...
C#
winform
GIF图片的应用 源码
在本文中,我们将深入探讨如何在
C#
WinForm
应用程序中集成和使用GIF图像,以实现动态效果。GIF(Graphics Interchange Format)是一种流行的图像格式,尤其适用于创建动画效果,如界面Logo、加载指示器等。对于初学...
C#
WinForm
读写XML文件
在
C#
WinForm
应用程序中,读写XML文件是常见的数据操作任务。XML(eXtensible Markup Language)是一种用于存储和传输数据的标准格式,它结构清晰、易于解析且跨平台。下面将详细介绍如何使用
C#
WinForm
来实现XML...
C#
111,111
社区成员
642,556
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章