Compartilhar via


Função GetUmsSystemThreadInformation (winbase.h)

Consulta se o thread especificado é um thread de agendador UMS, um thread de trabalho umS ou um thread não UMS.

Aviso

A partir de Windows 11, não há suporte para o agendamento no modo de usuário. Todas as chamadas falham com o erro ERROR_NOT_SUPPORTED.

Sintaxe

BOOL GetUmsSystemThreadInformation(
  [in]      HANDLE                         ThreadHandle,
  [in, out] PUMS_SYSTEM_THREAD_INFORMATION SystemThreadInfo
);

Parâmetros

[in] ThreadHandle

Um identificador para um thread. O identificador de thread deve ter o acesso THREAD_QUERY_INFORMATION correto. Para obter mais informações, consulte Segurança de thread e direitos de acesso.

[in, out] SystemThreadInfo

Um ponteiro para uma estrutura UMS_SYSTEM_THREAD_INFORMATION que recebe informações sobre o thread especificado.

O chamador deve inicializar o UmsVersion membro antes de chamar.

Retornar valor

Se a função falhar, o valor retornado será zero.

Para obter informações de erro estendidas, chame GetLastError.

Comentários

A função GetUmsSystemThreadInformation destina-se ao uso em depuradores, ferramentas de solução de problemas e aplicativos de criação de perfil. Por exemplo, o rastreamento isolado por thread ou instruções de passo a passo podem envolver a suspensão de todos os outros threads no processo. No entanto, se o thread a ser rastreado for um thread de trabalho ums, suspender threads do agendador UMS poderá causar um deadlock porque um thread de trabalho um UMS requer a intervenção de um thread do agendador UMS para ser executado. Um depurador pode chamar GetUmsSystemThreadInformation para cada thread que ele pode suspender para determinar o tipo de thread e, em seguida, suspendê-lo ou não conforme necessário para o código que está sendo depurado.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 com SP1 [somente aplicativos da área de trabalho], Windows 7 (somente 64 bits) e Windows Server 2008 R2 com KB977165 instalado
Servidor mínimo com suporte Windows Server 2008 R2 com SP1 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winbase.h (inclua Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll
Conjunto de APIs api-ms-win-core-ums-l1-1-0 (introduzido no Windows 7)