Función StorPortCreateSystemThread (storport.h)
StorPortCreateSystemThread crea un subproceso del sistema y proporciona un puntero a un contexto para el subproceso.
Sintaxis
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
);
Parámetros
[in] HwDeviceExtension
Puntero a la extensión de dispositivo de hardware del miniporte.
[in] StartRoutine
Puntero al punto de entrada del subproceso del sistema recién creado. Este parámetro es un puntero de función a una devolución de llamada STOR_THREAD_START_ROUTINE que recibe un único argumento, que es el valor del parámetro StartContext .
[in/optional] StartContext
Puntero a un único argumento que se pasa al subproceso cuando comienza la ejecución.
[in/optional] Priority
Puntero a un valor de enumeración STOR_THREAD_PRIORITY que especifica la prioridad del subproceso.
[out/optional] ThreadContext
Puntero a una variable que recibirá el contexto del subproceso.
Valor devuelto
StorPortCreateSystemThread devuelve uno de los siguientes valores:
Código devuelto | Descripción |
---|---|
STOR_STATUS_SUCCESS | Se ha creado correctamente un subproceso del sistema. |
STOR_STATUS_INVALID_PARAMETER | Uno o varios de los parámetros proporcionados no son válidos. |
STOR_STATUS_UNSUCCESSFUL | Se devuelve por otros motivos internos del sistema. |
Comentarios
Los controladores de miniporte que crean subprocesos dedicados al dispositivo llaman a StorPortCreateSystemThread, ya sea cuando se inicializan o cuando las solicitudes de E/S comienzan a entrar en las rutinas de distribución del controlador. Por ejemplo, un controlador podría crear este subproceso cuando recibe una solicitud de control de dispositivo asincrónica.
El subproceso continúa ejecutándose hasta que el sistema se apaga o el subproceso finaliza por sí mismo llamando a StorPortTerminateSystemThread.
La prioridad del subproceso se puede cambiar llamando a StorPortSetPriorityThread. Un miniport debe especificar un valor de prioridad de subproceso que evite las inversiones de prioridad en tiempo de ejecución. Consulte Subprocesos dedicados al dispositivo para obtener más información.
Para un adaptador determinado, el número máximo de subprocesos del sistema que puede crear un minipuerto es el número máximo de procesadores lógicos del sistema.
Requisitos
Requisito | Value |
---|---|
Servidor mínimo compatible | Windows Server 2022 |
Encabezado | storport.h |