我正在检查我的服务的内存使用情况,发现私有字节随着时间的推移而增加。该服务创建它需要的新组件,并且它们仅在服务停止时被处置。所以我正在寻找在有服务调用时创建新组件的代码,并在不需要它们时尝试处理它们。我正在使用 PerfMon 检查私有字节。
到目前为止,我在正确的轨道上吗?
此外,我发现其中一种方法每次都会创建新结构,然后它不会被处置或分配给 null。
var structInfo = new MyStruct();
structInfo .StructSize = Marshal.SizeOf(structInfo);
MyClass info = this.BuildStructInfo(structInfo);
return info;
编辑:
该方法返回从结构中获取其值的类。
我是否需要处理structInfo
,如果我不做任何事情,它会被 GC 收集吗?