VideoPortSynchronizeExecution-Funktion (video.h)
Die VideoPortSynchronizeExecution-Funktion synchronisiert die Ausführung einer vom Miniporttreiber bereitgestellten HwVidSynchronizeExecutionCallback-Funktion mit der HwVidInterrupt-Funktion des Miniporttreibers, sofern vorhanden. Andernfalls wird HwVidSynchronizeExecutionCallback mit einer erhöhten Priorität ausgeführt.
Syntax
VIDEOPORT_DEPRECATED BOOLEAN VIDEOPORT_API VideoPortSynchronizeExecution(
PVOID HwDeviceExtension,
VIDEO_SYNCHRONIZE_PRIORITY Priority,
PMINIPORT_SYNCHRONIZE_ROUTINE SynchronizeRoutine,
PVOID Context
);
Parameter
HwDeviceExtension
Zeiger auf die Geräteerweiterung des Miniporttreibers.
Priority
Gibt den Prioritätstyp an, mit dem die angegebene SynchronizeRoutine wie folgt ausgeführt werden muss:
- Wenn Priorität auf VpLowPriority festgelegt ist, wird der aktuelle Thread auf die höchste Nicht-Unterbrechungsmaskierungspriorität erhöht. Dementsprechend kann der aktuelle Thread nur durch eine ISR vorzeitig entfernt werden, wenn ein Gerät unterbricht.
- Wenn Priorität auf VpMediumPriority festgelegt ist und dem Miniporttreiber eine ISR zugeordnet ist, wird der Aufruf der angegebenen SynchronizeRoutine mit der HwVidInterrupt-Funktion des Miniporttreibers synchronisiert. Andernfalls erfolgt die Synchronisierung auf vpLowPriority-Ebene .
- VpHighPriority hat die gleiche Wirkung wie VpMediumPriority.
SynchronizeRoutine
Zeiger auf die HwVidSynchronizeExecutionCallback-Funktion des Miniporttreibers.
Context
Zeiger auf einen vom Aufrufer bereitgestellten Kontext, der an die HwVidSynchronizeExecutionCallback-Funktion des Miniporttreibers übergeben werden soll. Dieser Zeiger kann NULL sein.
Rückgabewert
Wenn der Vorgang erfolgreich ist, gibt VideoPortSynchronizeExecutionTRUE zurück.
Hinweise
Miniporttreiber rufen diese Routine nur selten auf, wenn eine der folgenden Bedingungen erfüllt ist:
- Die HwVidInterrupt-Funktion des Miniporttreibers teilt sich Arbeitsspeicher mit anderen Miniporttreiberfunktionen. Um auf den freigegebenen Speicher auf multiprozessorsichere Weise zugreifen zu können, müssen solche Miniporttreiberfunktionen VideoPortSynchronizeExecution mit HwVidSynchronizeExecutionCallback aufrufen. Diese Miniporttreiberfunktion kann sicher auf den freigegebenen Speicher zugreifen, da der Videoporttreiber verhindert, dass die HwVidInterrupt-Funktion gleichzeitig auf denselben Speicher zugreifen kann.
- Der Adapter muss mit einer Sequenz von Befehlen programmiert werden, ohne dass ein Kontextwechsel erforderlich ist. Beispielsweise kann die SvgaHwIoPortXxx-Funktion eines Miniporttreibers, die eine Sequenz von E/A-Anweisungen gepuffert und die Sequenz überprüft hat , VideoPortSynchronizeExecution mit HwVidSynchronizeExecutionCallback aufrufen. Diese Miniporttreiberfunktion kann den gepufferten und überprüften E/A-Stream sehr schnell an den Adapter übertragen.
Aufrufer von VideoPortSynchronizeExecution müssen unter IRQL ausgeführt werden.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows 2000 und höheren Versionen der Windows-Betriebssysteme. |
Zielplattform | Desktop |
Kopfzeile | video.h (Video.h einschließen) |
Bibliothek | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | <= DIRQL |