Что такое «асинхронный закрепленный дескриптор»?

Я пытаюсь исследовать действительно неприятный сбой программного обеспечения, который, возможно, связан с повреждением управляемой кучи (поскольку это происходит во время сборки мусора). Используя WinDbg с командой (SOS)! Gshandles, я получаю что-то вроде

0:000> !gchandles
GC Handle Statistics:
Strong Handles: 259
Pinned Handles: 137
Async Pinned Handles: 1
Ref Count Handles: 79
Weak Long Handles: 197
Weak Short Handles: 650
Other Handles: 0
Statistics:

И мне просто любопытно, в чем разница между «нормальным» закрепленным дескриптором и «асинхронным закрепленным» дескриптором? И могу ли я узнать, какой из моих дескрипторов является «асинхронным»? Я не смог найти никакой информации об этом в сети, и, поскольку кажется, что приложение всегда вылетает, когда этот счетчик равен ровно одному, он может иметь отношение к аварии. Но опять же, это может быть просто какой-то внутренний материал, использованный во время сборки мусора ..

25
задан floyd73 26 September 2011 в 12:24
поделиться