SetProcessAffinityMask

[New - Windows NT]

The SetProcessAffinityMask function sets a processor affinity mask for the threads of a specified process.

A process affinity mask is a bit vector in which each bit represents the processor on which the threads of the process are allowed to run.

The value of the process affinity mask must be a proper subset of the mask values obtained by the GetProcessAffinityMask function.

BOOL SetProcessAffinityMask(

HANDLE hProcess, // handle to process
DWORD dwProcessAffinityMask // process affinity mask
);  

Parameters

hProcess

A handle to the process whose affinity mask the function sets. This handle must have the PROCESS_SET_INFORMATION access right. For more information, see Process Objects.

dwProcessAffinityMask

Specifies an affinity mask for the threads of the process.

Return Values

If the function succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

Process affinity is inherited by any process that you start with the CreateProcess function.

See Also

CreateProcess, GetProcessAffinityMask