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

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

[in/optional] StartContext

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

[in/optional] Priority

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

[out/optional] ThreadContext

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

返回值

StorPortCreateSystemThread 返回以下值之一:

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

注解

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

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

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

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

要求

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

另请参阅

STOR_THREAD_PRIORITY

STOR_THREAD_START_ROUTINE

StorPortSetPriorityThread

StorPortTerminateSystemThread