wxw 发表于 2016-1-6 09:31:00

component控件运行之后内存占用问题

界面开发中利用到Flexgrid,运行起来之后内存占用飙涨,而且从不回落,该如何解决这个问题

Alice 发表于 2016-1-6 11:53:00

回复 1楼wxw的帖子

谢谢您的反馈。
您提到内存的问题,请提供可以重现问题的Demo,我们测试下它的性能然后给您反馈。

wxw 发表于 2016-1-6 14:54:00

回复 2楼Alice的帖子



Alice 发表于 2016-1-6 17:34:00

回复 3楼wxw的帖子

您的问题我们收到了,测试后给您回复。

Alice 发表于 2016-1-8 12:04:00

回复 3楼wxw的帖子

关闭和打开工程,内存占用不会降下来,这个问题我重现了。
我帮您提交到产品组,如果有提升的方案会在第一时间反馈给您。

wxw 发表于 2016-1-12 13:22:00

回复 5楼Alice的帖子

嗨你好 关于控件内存占用的问题有什么解决方案了吗

Alice 发表于 2016-1-12 16:51:00

回复 6楼wxw的帖子

很抱歉,还没有。

oaok 发表于 2016-8-15 22:07:02

这个问题普遍存在,希望官方重视下。只要窗体上有C1控件,关闭窗口,内存资源不能回收,造成内存占用只增不减直至崩溃!

oaok 发表于 2016-8-15 22:07:06

这个问题普遍存在,希望官方重视下。只要窗体上有C1控件,关闭窗口,内存资源不能回收,造成内存占用只增不减直至崩溃!

而vs自身控件,没有这个问题。

Alice 发表于 2016-8-16 09:30:41

oaok 发表于 2016-8-15 22:07
这个问题普遍存在,希望官方重视下。只要窗体上有C1控件,关闭窗口,内存资源不能回收,造成内存占用只增不 ...

很抱歉给您带来的不便,我们和研发组讨论了您的问题。
这个问题主要是由工程引起的,而不是C1FlexGrid本身的问题。
在工程中,使用了Timer1_Tick事件,initform方法调用从文件中导入图片,然后放到表格的单元格。
timer持续的在工作,因此这个操作每100 milliseconds都会执行,这导致了一次又一次的提高性能。

通过我们的讨论,你的示例中,从文件中导入图片会占用内存。
如果你的场景中需要重用图片,可以考虑导入图片一次然后保存在工程中。或者是工程不需要每次都做更新,这样的话,当导入图片,timer应该停止。
如下是建议的代码:
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
      Call initform()
      Timer1.Stop()
End Sub

希望对您有帮助。
页: [1]
查看完整版本: component控件运行之后内存占用问题