CreateUmsThreadContext 함수(winbase.h)

UMS(사용자 모드 일정 예약) 스레드 컨텍스트를 만들어 UMS 작업자 스레드를 나타냅니다.

경고

Windows 11 현재 사용자 모드 예약은 지원되지 않습니다. 오류 ERROR_NOT_SUPPORTED와 함께 모든 호출이 실패합니다.

구문

BOOL CreateUmsThreadContext(
  [out] PUMS_CONTEXT *lpUmsThread
);

매개 변수

[out] lpUmsThread

PUMS_CONTEXT 변수입니다. 출력 시 이 매개 변수는 UMS 스레드 컨텍스트에 대한 포인터를 받습니다.

반환 값

함수가 성공하면 0이 아닌 값을 반환합니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. 가능한 오류 값은 다음과 같습니다.

반환 코드 설명
ERROR_NOT_ENOUGH_MEMORY
메모리가 부족하여 UMS 스레드 컨텍스트를 만들 수 없습니다.

설명

UMS 스레드 컨텍스트는 UMS 작업자 스레드의 상태를 나타냅니다. 스레드 컨텍스트는 함수 호출에서 UMS 작업자 스레드를 지정하는 데 사용됩니다.

UMS 작업자 스레드는 InitializeProcThreadAttributeList 및 UpdateProcThreadAttribute를 사용하여 스레드에 대한 UMS 특성 목록을 준비한 후 CreateRemoteThreadEx 함수를 호출하여 만들어집니다.

UMS 스레드 컨텍스트의 기본 구조는 시스템에서 관리되며 직접 수정해서는 안 됩니다. UMS 작업자 스레드에 대한 정보를 가져와서 설정하려면 QueryUmsThreadInformationSetUmsThreadInformation 함수를 사용합니다.

UMS 작업자 스레드가 종료되면 DeleteUmsThreadContext를 호출하여 해당 스레드 컨텍스트를 해제해야 합니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 7(64비트만 해당) [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winbase.h(Windows.h 포함)
라이브러리 Kernel32.lib
DLL Kernel32.dll
API 세트 api-ms-win-core-ums-l1-1-0(Windows 7에 도입됨)

추가 정보

CreateRemoteThreadEx

DeleteUmsThreadContext

InitializeProcThreadAttributeList

QueryUmsThreadInformation

SetUmsThreadInformation

UpdateProcThreadAttribute