0

我在 .NET web api(.net 4.8 框架)中使用 Simple Injector DI,并且在遥测客户端周围有一个包装类(我自己的实现)。

public class MyAppInsights : IMyAppInsights
{
private static TelemetryClient telemetry;
public MyAppInsights ()
{
if (telemetry == null)
{
telemetry = new TelemetryClient();
}
}
//other interface method implementations
}

简单的喷油器启动配置看起来像

container.Register<IMyAppInsights , MyAppInsights >(Lifestyle.Singleton);

我注意到许多 Httpwebrequest 对象(应用程序洞察)被添加到内存中,并且没有为长时间运行的后台任务释放。这个问题最近才出现在执行导致内存不足异常的长时间运行的后台任务之后。

任何有关如何减少/堵塞内存泄漏/消耗的指针将不胜感激

4

1 回答 1

0

您可以尝试删除 Lifestyle.Singleton 以查看是否仍有内存泄漏。例如,还要检查网站。

https://docs.simpleinjector.org/en/latest/quickstart.html

于 2021-07-09T04:53:52.923 回答