StorPortCreateSystemThread-Funktion (storport.h)
StorPortCreateSystemThread- erstellt einen Systemthread und stellt einen Zeiger auf einen Kontext für den Thread bereit.
Syntax
ULONG StorPortCreateSystemThread(
[in] PVOID HwDeviceExtension,
[in] PSTOR_THREAD_START_ROUTINE StartRoutine,
[in/optional] PVOID StartContext,
[in/optional] PSTOR_THREAD_PRIORITY Priority,
[out/optional] PVOID *ThreadContext
);
Parameter
[in] HwDeviceExtension
Zeiger auf die Hardwaregeräteerweiterung des Miniports.
[in] StartRoutine
Zeiger auf den Einstiegspunkt für den neu erstellten Systemthread. Dieser Parameter ist ein Funktionszeiger auf einen STOR_THREAD_START_ROUTINE Rückruf, der ein einzelnes Argument empfängt, bei dem es sich um den StartContext Parameterwert handelt.
[in/optional] StartContext
Zeigen Sie auf ein einzelnes Argument, das beim Starten der Ausführung an den Thread übergeben wird.
[in/optional] Priority
Zeigen Sie auf einen STOR_THREAD_PRIORITY Enumerationswert, der die Threadpriorität angibt.
[out/optional] ThreadContext
Zeigen Sie auf eine Variable, die den Threadkontext empfängt.
Rückgabewert
StorPortCreateSystemThread gibt einen der folgenden Werte zurück:
Rückgabecode | Beschreibung |
---|---|
STOR_STATUS_SUCCESS | Ein Systemthread wurde erfolgreich erstellt. |
STOR_STATUS_INVALID_PARAMETER | Mindestens einer der bereitgestellten Parameter ist ungültig. |
STOR_STATUS_UNSUCCESSFUL | Wird aus anderen internen Systemgründen zurückgegeben. |
Bemerkungen
Miniport-Treiber, die gerätededizierte Threads erstellen, rufen StorPortCreateSystemThreadauf, entweder wenn sie initialisiert werden oder wenn E/A-Anforderungen beginnen, in die Dispatch Routinen des Treibers einzutreffen. Beispielsweise kann ein Treiber einen solchen Thread erstellen, wenn er eine asynchrone Gerätesteuerungsanforderung empfängt.
Der Thread wird weiterhin ausgeführt, bis das System heruntergefahren wird oder der Thread selbst beendet wird, indem StorPortTerminateSystemThreadaufgerufen wird.
Threadpriorität kann durch Aufrufen von StorPortSetPriorityThreadgeändert werden. Ein Miniport sollte einen Threadprioritätswert angeben, der Laufzeitprioritätsversionen vermeidet. Weitere Informationen finden Sie unter device-dedicated Threads.
Bei einem bestimmten Adapter ist die maximale Systemthreadszahl, die ein Miniport erstellen kann, die maximale Anzahl logischer Prozessor im System.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Server- | Windows Server 2022 |
Header- | storport.h |