다음을 통해 공유


KsRegisterCountedWorker 함수(ks.h)

스레드 사용을 위해 등록하는 클라이언트를 처리합니다.

구문

KSDDKAPI NTSTATUS KsRegisterCountedWorker(
  [in]  WORK_QUEUE_TYPE  WorkQueueType,
  [in]  PWORK_QUEUE_ITEM CountedWorkItem,
  [out] PKSWORKER        *Worker
);

매개 변수

[in] WorkQueueType

작업 스레드의 우선 순위를 포함합니다. 일반적으로 CriticalWorkQueue, DelayedWorkQueue 또는 HyperCriticalWorkQueue 중 하나입니다.

[in] CountedWorkItem

현재 개수 값에 따라 필요에 따라 큐에 대기할 작업 큐 항목에 대한 포인터를 포함합니다.

[out] Worker

작업 항목을 예약할 때 사용해야 하는 불투명 컨텍스트를 포함합니다. 큐 유형도 포함하며 작업 항목의 완료를 동기화하는 데 사용됩니다.

반환 값

작업자가 초기화되면 STATUS_SUCCESS 반환합니다.

설명

스레드 사용이 완료되면 해당 KsUnregisterWorker 와 일치해야 합니다. 이 함수는 KsRegisterWorker와 유사하며 항상 큐에 대기할 작업 항목을 전달합니다. 이는 대기 중인 작업 항목 수를 최소화하고 여러 작업 항목 스레드에 대한 액세스를 직렬화하는 데 필요한 작업 항목에 필요한 상호 제외 코드를 줄이기 위해 KsIncrementCountedWorkerKsDecrementCountedWorker 와 함께 사용됩니다. 작업자 큐는 다른 작업 항목을 큐에 대기하는 데 계속 사용할 수 있습니다. PASSIVE_LEVEL 호출할 수 있습니다.

요구 사항

요구 사항
대상 플랫폼 유니버설
헤더 ks.h(Ks.h 포함)
라이브러리 Ks.lib