O que esta função CopyPDBs (de clr.dll) está fazendo?
Ao usar o Process Explorer para analisar um aplicativo ASP.NET MVC em um ambiente de produção executando o IIS, notei muitas chamadas para issoCopyPDBs
função deC:\Windows\Microsoft.NET\Framework64\v4.0.30319\clr.dll
:
Todos eles têm exatamente o mesmo rastreamento de pilha:
ntdll.dll!ZwWaitForSingleObject+0xa
KERNELBASE.dll!WaitForSingleObjectEx+0x98
clr.dll!GetMetaDataInternalInterface+0x3064a
clr.dll!GetMetaDataInternalInterface+0x30732
clr.dll!GetMetaDataInternalInterface+0x306e5
clr.dll!CopyPDBs+0x44a2
KERNEL32.DLL!BaseThreadInitThunk+0x22
ntdll.dll!RtlUserThreadStart+0x34
Minha pergunta é:O que é issoCopyPDBs
função doclr.dll
exatamente fazendo?
Eu pesquisei bastante, mas ainda não consigo encontrar nenhuma explicação e / ou documentação dessa função.
Nota: Esta pergunta está de alguma forma relacionada a uma pergunta anterior minha, feita no ServerFault:https://serverfault.com/questions/684554/high-cpu-usage-of-iis-process-w3wp-exe-because-of-many-slow-clr-dllcopypdbs