IInterruptSync::RegisterServiceRoutine 메서드(portcls.h)
메서드는 RegisterServiceRoutine
인터럽트 발생 시 호출할 ISR(인터럽트 서비스 루틴)을 등록합니다.
구문
NTSTATUS RegisterServiceRoutine(
[in] PINTERRUPTSYNCROUTINE Routine,
[in] PVOID DynamicContext,
[in] BOOLEAN First
);
매개 변수
[in] Routine
호출할 루틴에 대한 포인터입니다. 이 매개 변수는 PINTERRUPTSYNCROUTINE 형식의 함수 포인터입니다( IInterruptSync 참조).
[in] DynamicContext
호출될 때 루틴에 전달되는 컨텍스트 값을 지정합니다.
[in] First
루틴이 ISR 목록의 머리 또는 꼬리에 추가되는지 여부를 지정합니다. TRUE이면 목록의 맨 앞에 루틴이 추가됩니다. FALSE이면 꼬리에 추가됩니다.
반환 값
RegisterServiceRoutine
는 호출에 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 메서드는 적절한 오류 코드를 반환합니다.
설명
이 메서드는 지정된 루틴을 동기화 개체의 ISR 목록에 추가합니다. 인터럽트 발생 시 목록 머리의 루틴이 먼저 호출되고 꼬리의 루틴이 마지막이라고 합니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 유니버설 |
헤더 | portcls.h(Portcls.h 포함) |
IRQL | PASSIVE_LEVEL |