我试图以编程方式限制在 .Net AppDomain 中运行的插件的内存消耗,但我找不到任何设置参数,也找不到查询 AppDomain 以确定它消耗了多少内存的方法。有任何想法吗?

有帮助吗?

解决方案

这是查询进程内存使用情况的文档。与 AppDomain 不同,但它可能是一个起点。

http://msdn.microsoft.com/en-us/library/s80a75e5(VS.80).aspx

您也可以询问 GC 它认为当前分配了什么。

http://msdn.microsoft.com/en-us/library/system.gc.gettotalmemory(VS.71).aspx

其他提示

老问题,但与此同时(自 .Net Framework 4.0 起)有一个新的解决方案可用。您必须启用 ARM(应用程序域资源监控)。从那时起,您可以请求有关总消耗处理器时间、内存使用情况等的信息。

请参阅此处的 Microsoft 文档

不确定编程,但是 流程浏览器 可以告诉您 .net AppDomain 使用了多少内存。也许他们有一些关于如何查询该信息的文档。

使用 C:\WINDOWS\Microsoft.NET\Framework\vXXXXXX\mscoree.tlb 中的 mscoree.CorRuntimeHostClass 互操作

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top