다음을 통해 공유


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, OuterUnknownResourceList 매개 변수는 COM 개체에 대한 참조 계산 규칙을 따릅니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000부터 사용할 수 있습니다.
대상 플랫폼 유니버설
헤더 portcls.h(Portcls.h 포함)
라이브러리 Portcls.lib
IRQL PASSIVE_LEVEL

추가 정보

IInterruptSync

IResourceList

IResourceList::NumberOfEntriesOfType