StorPortCreateSystemThread, fonction (storport.h)
StorPortCreateSystemThread crée un thread système et fournit un pointeur vers un contexte pour le thread.
Syntaxe
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
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension d’appareil matériel du miniport.
[in] StartRoutine
Pointeur vers le point d’entrée du thread système nouvellement créé. Ce paramètre est un pointeur de fonction vers un rappel STOR_THREAD_START_ROUTINE qui reçoit un seul argument, qui est la valeur de paramètre StartContext.
[in/optional] StartContext
Pointeur vers un seul argument passé au thread lorsqu’il commence l’exécution.
[in/optional] Priority
Pointeur vers une valeur d’énumération STOR_THREAD_PRIORITY qui spécifie la priorité du thread.
[out/optional] ThreadContext
Pointeur vers une variable qui recevra le contexte de thread.
Valeur de retour
StorPortCreateSystemThread retourne l’une des valeurs suivantes :
Retourner le code | Description |
---|---|
STOR_STATUS_SUCCESS | Un thread système a été créé avec succès. |
STOR_STATUS_INVALID_PARAMETER | Un ou plusieurs des paramètres fournis ne sont pas valides. |
STOR_STATUS_UNSUCCESSFUL | Retourné pour d’autres raisons système internes. |
Remarques
Les pilotes miniport qui créent des threads dédiés à l’appareil appellent StorPortCreateSystemThread, soit lorsqu’ils initialisent ou lorsque les demandes d’E/S commencent à entrer dans les routines Dispatch du pilote. Par exemple, un pilote peut créer un tel thread lorsqu’il reçoit une demande de contrôle d’appareil asynchrone.
Le thread continue à s’exécuter jusqu’à ce que le système soit arrêté ou que le thread se termine en appelant StorPortTerminateSystemThread.
La priorité de thread peut être modifiée en appelant StorPortSetPriorityThread. Une miniport doit spécifier une valeur de priorité de thread qui évite les inversions de priorité au moment de l’exécution. Consultez threads dédiés aux appareils pour plus d’informations.
Pour un adaptateur donné, le nombre maximal de threads système qu’un miniport peut créer est le nombre maximal de processeurs logiques dans le système.
Exigences
Exigence | Valeur |
---|---|
serveur minimum pris en charge | Windows Server 2022 |
d’en-tête | storport.h |