.NET 3.5运行进程的内存分析

6

有没有一种工具可以附加到正在运行的.NET 3.5进程并进行快照?

我已经查看了.NET Memory profilerdotTrace memoryRedGate ANTS profiler,但似乎它们都不能做到。

.NET Memory profiler和ANTS只能附加到.NET 4.0进程,而dotTrace memory似乎无法附加到正在运行的进程。


更新

操作系统为 Windows Server 2003 (R2)。


如果您正在运行Windows Vista或更高版本,则可以使用任务管理器来转储进程。然后,您可以将此转储文件加载到.NET Memory Profiler中(我经常这样做...)。 - Asher
@Asher 它能在 .NET 3.5 上运行吗?如果可以,请添加答案。操作系统是 Windows Server 2003。 - Aliostad
是的,它会。在Windows Server 2003中,内置的Windows任务管理器没有为进程创建转储的选项,但您可以使用Process Explorer来完成:http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx - Asher
2个回答

1
正如您在问题中提到的,ANTS可以与.NET 4.0或更高版本一起使用。您需要做的是强制应用程序使用.NET 4,这不需要重新编译代码。它只是强制应用程序使用.NET 4运行时。

1
你需要仔细阅读问题。一个正在运行 .NET 3.5 的进程。 - Aliostad
@Aliostad 我猜你的意思是使用 .NET 3.5 编译的进程,显然可以在 .NET 4.0 运行时下运行。据我所知,.NET 4.0 运行时或更高版本可以实现你想要的功能。 - Ekk

0

Telerik JustTrace 中的内存分析器将对 2.0/3.5 应用程序进行快照。您可能会收到一个警告,说它无法附加分析器,但如果您还是这样做,JustTrace 将附加一个调试器来获取相同的信息。注意:这仅适用于内存分析器,而不适用于性能分析器。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接