各位 WinForm32 位程序内存不足怎么处理啊

2018-02-05 15:36:11 +08:00
 BadCat

winform 程序 ,用的 picturebox 显示图片,2 张图片为一组,做了一个自定义控件,然后查询界面放了 10 组控件。 客户一开始给的图片全在 30kb-100kb 之间。 现在他们不知道从哪搞的 20M 的图片,添加进去后再查询程序就会崩溃掉。 我给他们使劲往下压缩了,但图片也只能压缩到 1.3M-1.5M 之间。 一查询,加载 2、3 组还好,加载 10 组就会崩掉 64 位的虽然不会崩掉,但占内存占到了 2g, 主要是他们图片的像素点非常多 现在是只要一查到那张 1.3M 的图片 内存就会占用到 2g,查询其他的 30kb、40kb 的图片内存占用才 100 多 m

想问各位有什么方法能去很好的处理这些问题

1758 次点击
所在节点    问与答
6 条回复
UnPace
2018-02-05 15:39:00 +08:00
你这头像犯规了

zwl2012
2018-02-05 16:08:21 +08:00
这是你实现问题吧,你 40k 照片能用 100M 内存,1.3M 图片使用 2G 内存相对来说比 40k 图片的内存利用率更高吧
verrickt
2018-02-05 16:14:35 +08:00
展示略缩图怎么样?
wpf 里可以指定 decodepixelheight 啥的,不知道 winForm 怎么样
zj299792458
2018-02-05 16:21:14 +08:00
用缩略图?
wwqgtxx
2018-02-05 16:40:31 +08:00
先 resize 再显示呀
BadCat
2018-02-05 17:50:01 +08:00
@zwl2012 40k 是一张,我有 10 组,一共是 20 张 也就是 800k 用了 100m 。是图片的问题 图片 8000x9000 多

@zj299792458 刚改好 用的缩略图

用的缩略图 妈的 一个 8000x9000 的图 缩出来还跟高清的一样,但内存只占了 100、200m 好多了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/428603

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX