Método ICorProfilerInfo4::InitializeCurrentThread
Inicializa o thread atual antes das chamadas subsequentes à API do criador de perfil no mesmo thread, para que o deadlock possa ser evitado.
Sintaxe
HRESULT InitializeCurrentThread ();
Comentários
Recomendamos que você chame InitializeCurrentThread
em qualquer thread que chame uma API do criador de perfil enquanto houver threads suspensos. Esse método normalmente é usado por criadores de perfil de amostragem que criam seu próprio thread para chamar o método ICorProfilerInfo2::DoStackSnapshot para executar caminhadas de pilha enquanto o thread de destino está suspenso. Ao chamar InitializeCurrentThread
uma vez quando o criador de perfil cria o thread de amostragem pela primeira vez, os criadores de perfil podem garantir que a inicialização lenta por thread que o CLR executaria durante a primeira chamada DoStackSnapshot
agora pode ocorrer com segurança quando nenhum outro thread estiver suspenso.
Observação
InitializeCurrentThread
faz a inicialização com antecedência para concluir tarefas que fazem bloqueios e podem ficar em deadlock. Chame InitializeCurrentThread
somente quando não houver threads suspensos.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: CorProf.idl, CorProf.h
Biblioteca: CorGuids.lib
Versões do .NET Framework: disponíveis desde 4.5