社区
C#
帖子详情
VS 自带 诊断工具的一个疑问
zmidl
2020-05-23 08:35:48
如图
当前任务是tcpClient接收大量数据显示到界面,发现内存暴增,于是诊断工具查看内存变化
在通过检查两组快照后 定位到某些占资源的对象后发现有些控件右边有“检测到循环”的标签。是什么意思啊?是不是就是这个循环造成的?
我用的是wpf + mvvm 方式绑定数据到UI 的 。如果是这个 “循环”导致的内存暴增的话 有啥解决方案呢?
希望有过相同经历的大鸟来帮个忙。。手里就这点分了全部拿出来了。
...全文
500
3
打赏
收藏
VS 自带 诊断工具的一个疑问
如图 当前任务是tcpClient接收大量数据显示到界面,发现内存暴增,于是诊断工具查看内存变化 在通过检查两组快照后 定位到某些占资源的对象后发现有些控件右边有“检测到循环”的标签。是什么意思啊?是不是就是这个循环造成的? 我用的是wpf + mvvm 方式绑定数据到UI 的 。如果是这个 “循环”导致的内存暴增的话 有啥解决方案呢? 希望有过相同经历的大鸟来帮个忙。。手里就这点分了全部拿出来了。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zmidl
2020-09-03
打赏
举报
回复
感谢楼上两位进来顶贴。问题找到了。用动态函数接受数据 ,每次都是new 一个对象 没有销毁,内测暴增
正怒月神
2020-05-25
打赏
举报
回复
wpf我不怎么玩,我只是来分析一下问题。
先分析问题, 一般来说, 内存暴涨,就是开辟内存的速度,大于了回收速度。 这种问题,普遍是之前的内存被引用,占着释放不了。 在看你的检测到循环。 普遍来说,存在2个情况。 1 递归导致 这个很明显,递归会占着引用不放。
(但是你这边应该不是这个问题。)
2 两个以上的类中,有相互的实例化对象。
(我估计这个可能性比较大。)
比如 A 类中 B b=new B(); B 类中 A a=new A(); 要解决2这个问题,也比较简单。 有2个方案, 1 所有的实例化,都在各自的方法内,用到哪些类,就实例化哪些类。不要做全局的。 2 使A 或者B其中一个 继承自一个接口IA/IB 使用时,IA a=new A();
threenewbee
2020-05-24
打赏
举报
回复
存在循环引用,也就是它引用的对象又引用回来了。
一方梯队Open PCS PS610cs试用软件.rar
一方梯队Open PCS PS610cs试用软件rar,一方梯队Open PCS PS610cs试用软件
华勤 HGU421N 用户手册
HGU421N是专门为品牌客户定制的一款功能强大、性能卓越的终端产品,向您提供了
一个
灵活、安全和完备的家庭网络解决方案。它的配置简单、操作方便、使用灵活、安全可靠,您还可以获得专业服务支持。为了您更有效的了解和使用本产品,我们向您提供本产品的用户使用手册,请您仔细阅读。
GM600写频软件 用户指南
GM600写频软件 用户指南
Windows系统下解决PhPStudy MySQL启动失败问题
主要介绍了Windows系统下解决PhPStudy MySQL启动失败问题,本文给出了解决流程通过截图的形式给大家展示,需要的朋友可以参考下
Wireshark使用方法.doc
Wireshark使用方法.doc
C#
111,097
社区成员
642,554
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章