NdisAllocateTimerObject 함수(ndis.h)
NdisAllocateTimerObject 함수는 후속 NdisXxx 타이머 함수에 사용할 타이머 개체를 할당하고 초기화합니다.
구문
NDIS_STATUS NdisAllocateTimerObject(
[in] NDIS_HANDLE NdisHandle,
[in] PNDIS_TIMER_CHARACTERISTICS TimerCharacteristics,
[out] PNDIS_HANDLE pTimerObject
);
매개 변수
[in] NdisHandle
호출자 초기화 중에 가져온 NDIS 핸들입니다. NDIS 핸들을 가져오는 방법에 대한 자세한 내용은 풀 핸들 가져오기를 참조하세요.
[in] TimerCharacteristics
호출자가 제공한 포인터 할당 된 타이머 개체의 특성을 지정하는 NDIS_TIMER_CHARACTERISTICS 구조체입니다.
[out] pTimerObject
NDIS가 NdisXxx 타이머 함수에 대한 후속 호출에서 타이머 개체를 식별하기 위해 제공하는 NDIS 타이머 개체 핸들에 대한 포인터입니다.
반환 값
NdisAllocateTimerObject는 다음 상태 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
|
타이머 개체가 성공적으로 할당되었습니다. |
|
리소스가 부족하여 할당에 실패했습니다. |
|
NDIS_TIMER_CHARACTERISTICS 구조의 정보가 잘못되어 할당에 실패했습니다. |
|
위의 상태 값은 적용되지 않습니다. |
설명
타이머 서비스를 사용하기 위해 NDIS 드라이버는 먼저 NdisAllocateTimerObject 함수를 호출하여 타이머 개체를 초기화합니다. 일반적으로 NdisAllocateTimerObject 는 드라이버 초기화 중에 호출됩니다.
타이머를 시작하려면 NdisSetTimerObject 함수를 호출합니다. NdisSetTimerObject 호출은 시스템 타이머 큐에 타이머 개체를 삽입합니다. 특정 타이머 개체의 instance 한 개만 지정된 순간에 큐에 대기할 수 있습니다.
타이머를 취소하려면 NdisCancelTimerObject 함수를 호출합니다. NdisCancelTimerObject 는 타이머 개체가 현재 큐에 대기 중인 경우 큐에서 제거합니다.
타이머 개체를 해제하려면 NdisFreeTimerObject 함수를 호출해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | NDIS 6.0 이상에서 지원됩니다. |
대상 플랫폼 | 유니버설 |
헤더 | ndis.h(Ndis.h 포함) |
라이브러리 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 규정 준수 규칙 | Irql_Timer_Function(ndis) |