【发布时间】:2012-10-12 18:28:52
【问题描述】:
我想让我的程序(比如在内存监视模式下)告诉我它何时将某些东西分配到大对象堆上。这样我也许可以调整不应该使用 LOH 的区域。
将对象分配到大对象堆时是否引发事件?
【问题讨论】:
标签: c# memory-management
我想让我的程序(比如在内存监视模式下)告诉我它何时将某些东西分配到大对象堆上。这样我也许可以调整不应该使用 LOH 的区域。
将对象分配到大对象堆时是否引发事件?
【问题讨论】:
标签: c# memory-management
看看CLR ETW Events下的Garbage Collection Events:
您将对GCAllocationTick_V2 Event 和GCStart_V1 Event 最感兴趣。
【讨论】:
在 LOH 上分配了大小 >= 85000 字节的对象。据我所知,除非您想为 CLR 提供内存分配的自定义实现,否则不会引发任何事件。但是,您可以使用 SOS(Son of Strike)调试扩展来分析堆。
【讨论】: