5 c# wpf memory-leaks winforms
我有不同的组件,如应用程序Windows Media Player,Image box等等所有组件都是playing back to back或one after another.并且用户控制器的Panel父级为5 Grids,a Grid为4的组合Labels.并且同一个用户控制器的表单有2个带有视频和图像的实例.
由于这一点,我的应用程序每秒都会将其提交的内存大小增加2MB.一段时间后,由于内存不足,我的应用程序停止了.所以我想看看内存泄漏的部分或组件.
有没有任何免费软件来监控内存泄漏?
要监视 .NEE 中是否存在内存泄漏,您可以使用 Windows 性能监视器。来自本文:识别并防止托管代码中的内存泄漏:
使用 PerfMon 检查应用程序的以下性能计数器:进程/专用字节数、.NET CLR 内存/所有堆中的字节数和 .NET CLR LocksAndThreads/当前逻辑线程数。进程/专用字节计数器报告专门为进程分配且不能与系统上的其他进程共享的所有内存。.NET CLR Memory/# Bytes in All Heaps 计数器报告 Gen0、Gen1、Gen2 和大对象堆的总大小。.NET CLR LocksAndThreads/# of current逻辑线程计数器报告AppDomain中的逻辑线程数。如果应用程序的逻辑线程计数意外增加,则线程堆栈正在泄漏。如果专用字节数增加,但所有堆中的字节数保持稳定,则非托管内存正在泄漏。如果两个计数器都在增加,则托管堆中的内存正在增加。
另一个跟踪下载内存泄漏的工具是:DebugDiag。它非常有效,而且免费。
| 归档时间: |
|
| 查看次数: |
350 次 |
| 最近记录: |