我正在使用Scitech的.Net内存分析器检查我的应用程序(在WinXP 64上运行)中的一些内容。我发现我的应用程序使用了一个列表,它只有一个活动实例,始终是32字节,并显示为数组(例如Products[])。但仔细查看该实例时,似乎没有任何引用它的东西。如果我勾选“仅显示根路径中包括的实例”复选框,则引用列表为空。如果我取消勾选此复选框,则只会看到:
Object[] #307[9126]
<GCHandle> #306 {Pinned}
分配调用堆栈看起来像这样:
mscorlib!System.Collections.Generic.List<T>..cctor()
[Skipped frame(s)]
mscorlib!System.Collections.ObjectModel.Collection<T>..ctor()
MyApp.ProductsAdmin!MyApp.ProductsAdmin.ViewModels.ProductsAdminViewModel..ctor() ProductsAdminViewModel.cs
看起来只是在构建一个空列表。当根路径中没有包含任何实例并且我只看到“Pinned”时,这是什么意思呢?