EventHandler<UnobservedTaskExceptionEventArgs> 的内存使用

Memory usage for EventHandler<UnobservedTaskExceptionEventArgs>

在对我的应用程序(托管在服务结构之上的 .NET owin 服务)进行内存分析时,我注意到 EventHandler<UnobservedTaskExceptionEventArgs> 有 24 个实例,每个实例的大小为 1880B,但包含大小 - 我认为是对象 + 全部参考文献约 1.2GB。

我认为这在某种程度上与未等待任务中的异常有关。 这可能是罪魁祸首还是转移注意力 - 以及为什么它首先出现在内存转储中?

原来这是服务结构基础设施的一部分。有状态服务副本将自身挂钩到 Task.UnobservedTaskException 以进行一些内部监控。它还优雅地注销了自己。由于与副本关联的状态字典,分配的内存很大。