StorPortCreateSystemThread 函数 (storport.h)

StorPortCreateSystemThread 创建系统线程,并提供指向线程上下文的指针。

语法

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
);

参数

[in] HwDeviceExtension

指向微型端口的硬件设备扩展的指针。

[in] StartRoutine

指向新创建的系统线程的入口点的指针。 此参数是指向接收单个参数的 STOR_THREAD_START_ROUTINE 回调的函数指针,它是 StartContext 参数值。

[in/optional] StartContext

指向在线程开始执行时传递给线程的单个参数的指针。

[in/optional] Priority

指向指定线程优先级的 STOR_THREAD_PRIORITY 枚举值的指针。

[out/optional] ThreadContext

指向将接收线程上下文的变量的指针。

返回值

StorPortCreateSystemThread 返回以下值之一:

返回代码 描述
STOR_STATUS_SUCCESS 已成功创建系统线程。
STOR_STATUS_INVALID_PARAMETER 提供的一个或多个参数无效。
STOR_STATUS_UNSUCCESSFUL 出于其他内部系统原因返回。

言论

创建设备专用线程的微型端口驱动程序调用 StorPortCreateSystemThread(初始化时或 I/O 请求开始传入驱动程序的 Dispatch 例程时)。 例如,驱动程序在收到异步设备控制请求时可能会创建此类线程。

线程将继续运行,直到系统关闭或线程通过调用 StorPortTerminateSystemThread来终止自身。

可以通过调用 StorPortSetPriorityThread来更改线程优先级。 微型端口应指定线程优先级值,以避免运行时优先级反转。 有关详细信息,请参阅 设备专用线程

对于给定的适配器,微型端口可以创建的最大系统线程是系统中的最大逻辑处理器计数。

要求

要求 价值
支持的最低服务器 Windows Server 2022
标头 storport.h

另请参阅

STOR_THREAD_PRIORITY

STOR_THREAD_START_ROUTINE

StorPortSetPriorityThread

StorPortTerminateSystemThread