Função SetThreadGroupAffinity (processtopologyapi.h)

Define a afinidade do grupo de processadores para o thread especificado.

Sintaxe

BOOL SetThreadGroupAffinity(
  [in]            HANDLE               hThread,
  [in]            const GROUP_AFFINITY *GroupAffinity,
  [out, optional] PGROUP_AFFINITY      PreviousGroupAffinity
);

Parâmetros

[in] hThread

Um identificador para o thread.

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

[in] GroupAffinity

Uma estrutura GROUP_AFFINITY que especifica a afinidade do grupo de processadores a ser usada para o thread especificado.

[out, optional] PreviousGroupAffinity

Um ponteiro para uma estrutura GROUP_AFFINITY para receber a afinidade de grupo anterior do thread. Este parâmetro pode ser NULL.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, use GetLastError.

Comentários

A partir do Windows 11 e do Windows Server 2022, em um sistema com mais de 64 processadores, as afinidades de processo e thread abrangem todos os processadores do sistema, em todos os grupos de processadores, por padrão. A função SetThreadGroupAffinity restringe a afinidade de um thread aos processadores em relação ao grupo de processadores único especificado pelo GroupAffinity fornecido. Esse grupo também se tornará o grupo primário do thread.

Para compilar um aplicativo que usa essa função, defina _WIN32_WINNT >= 0x0601. Para obter mais informações, consulte Usando os cabeçalhos do Windows.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho processtopologyapi.h
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

GROUP_AFFINITY