PcNewInterruptSync 함수(portcls.h)
PcNewInterruptSync 함수는 인터럽트 동기화 개체를 만들고 초기화합니다.
구문
PORTCLASSAPI NTSTATUS PcNewInterruptSync(
[out] PINTERRUPTSYNC *OutInterruptSync,
[in, optional] PUNKNOWN OuterUnknown,
[in] PRESOURCELIST ResourceList,
[in] ULONG ResourceIndex,
[in] INTERRUPTSYNCMODE Mode
);
매개 변수
[out] OutInterruptSync
이 함수에서 만든 인터럽트 동기화 개체에 대한 출력 포인터입니다. 이 매개 변수는 함수가 새로 만든 IInterruptSync 개체에 대한 참조를 출력하는 호출자가 할당한 포인터 변수를 가리킵니다. 이 매개 변수에 유효한 NULL 이 아닌 포인터 값을 지정합니다.
[in, optional] OuterUnknown
개체를 집계해야 하는 개체의 IUnknown 인터페이스에 대한 포인터입니다. 집계가 필요하지 않은 경우 이 매개 변수를 NULL로 설정합니다.
[in] ResourceList
초기화 중에 미니포트 드라이버에 제공된 IResourceList 개체에 대한 포인터입니다. 포트 드라이버는 이 리소스 목록을 검사하지만 수정하지는 않습니다.
[in] ResourceIndex
리소스 목록에서 인터럽트 리소스의 인덱스를 지정합니다. IResourceList::NumberOfEntriesOfType 메서드가 CmResourceTypeInterrupt 형식에 대해 N 개수를 반환하는 경우 ResourceIndex는 0에서 N-1 범위의 값이어야 합니다.
[in] Mode
여러 ISR을 처리하는 방법을 지정합니다. 이 매개 변수를 INTERRUPTSYNCMODE 열거형 값 중 하나로 설정합니다. 자세한 내용은 아래 설명 부분을 참조하십시오.
반환 값
PcNewInterruptSync 는 호출에 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 적절한 오류 코드를 반환합니다.
설명
Mode 매개 변수는 다음 표의 INTERRUPTSYNCMODE 열거형 값 중 하나로 설정됩니다.
값 | 의미 |
---|---|
InterruptSyncModeNormal | 해당 ISR 중 하나가 STATUS_SUCCESS 반환될 때까지 목록에서 각 ISR을 호출합니다. |
InterruptSyncModeAll | 다양한 ISR의 반환 코드에 관계없이 목록에서 각 ISR을 정확히 한 번 호출합니다. |
InterruptSyncModeRepeat | 목록의 ISR이 STATUS_SUCCESS 반환하지 않는 목록을 탐색할 때까지 전체 ISR 목록을 트래버스합니다. |
이러한 세 가지 모드에 대한 자세한 설명은 인터럽트 동기화 개체를 참조하세요.
OutInterruptSync, OuterUnknown 및 ResourceList 매개 변수는 COM 개체에 대한 참조 계산 규칙을 따릅니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000부터 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | portcls.h(Portcls.h 포함) |
라이브러리 | Portcls.lib |
IRQL | PASSIVE_LEVEL |