스레딩 및 동기화 0 수준
Windows WDDM(디스플레이 드라이버 모델)을 사용하면 디스플레이 미니포트 드라이버에 대한 다음 호출을 재진입 방식으로 수행할 수 있습니다. 즉, 아래에 나열된 함수를 호출하여 둘 이상의 스레드가 동시에 드라이버를 입력할 수 있습니다.
참고
드라이버에서 두 개 이상의 스레드를 동시에 실행할 수 있지만 두 개의 스레드는 단일 프로세스에 속할 수 없습니다.
- DxgkDdiCheckMultiPlaneOverlaySupport3(또는 DxgkDdiCheckMultiPlaneOverlaySupport2DxgkDdiCheckMultiPlaneOverlaySupport/)
- DxgkDdiCloseAllocation
- DxgkDdiCollectDbgInfo. 이 함수는 다양한 오류에 대한 디버그 정보를 수집해야 하며 언제든지 높은 IRQL에서 호출할 수 있습니다(즉, DxgkDdiCollectDbgInfo 가 실행되는 IRQL은 일반적으로 정의되지 않음). 모든 경우에 DxgkDdiCollectDbgInfo 는 필요한 디버그 정보의 가용성과 적절한 동기화를 확인해야 합니다. 그러나 pCollectDbgInfo 매개 변수가 가리키는 DXGKARG_COLLECTDBGINFO 구조체의 Reason 멤버가 VIDEO_TDR_TIMEOUT_DETECTED 또는 VIDEO_ENGINE_TIMEOUT_DETECTED 설정된 경우 드라이버는 DxgkDdiCollectDbgInfo가 페이징 가능하고 IRQL = PASSIVE_LEVEL 실행되며 동기화 0 수준을 지원해야 합니다.
- DxgkDdiControlEtwLogging
- DxgkDdiCreateAllocation
- DxgkDdiCreateContext
- DxgkDdiCreateDevice
- DxgkDdiDescribeAllocation
- DxgkDdiDestroyAllocation
- DxgkDdiDestroyContext
- DxgkDdiDestroyDevice
- DxgkDdiDpcRoutine
- DxgkDdiEnumVidPnCofuncModality
- DxgkDdiGetScanLine
- DxgkDdiGetStandardAllocationDriverData
- DxgkDdiInterruptRoutine
- DxgkDdiIsSupportedVidPn
- DxgkDdiMiracastCreateContext
- DxgkDdiMiracastDestroyContext
- DxgkDdiMiracastIoControl
- DxgkDdiMiracastQueryCaps
- DxgkDdiOpenAllocation
- DxgkDdiPresent
- DxgkDdiQueryAdapterInfo
- DxgkDdiQueryCurrentFence
- DxgkDdiRecommendFunctionalVidPn
- DxgkDdiRecommendVidPnTopology
- DxgkDdiRender
- DxgkDdiRenderKm
- DxgkDdiResetDevice