IAdapterPnpManagement::P npStop 方法 (portcls.h)

PnpStop 方法在停止所有 Ioctl 操作并将活动流从 run|pause|acquire 状态移动到停止状态后提供通知。

语法

void PnpStop();

返回值

备注

PnpStop 在停止所有 Ioctl 操作并将活动流从 run|pause|acquire 状态移动到停止状态之后由 Portcls 调用。 持有设备全局锁时不会进行此调用。 因此,微型端口驱动程序有机会等待其异步操作, (工作项、dpc、异步线程) 并取消注册其音频子设备。 在从此调用返回之前,微型端口必须确保已释放所有硬件资源。

微型端口不得等待删除当前微型端口/流对象,因为目前还不清楚现有音频客户端何时释放当前句柄。 PnpStop 线程无法永久阻止而不导致系统崩溃,即,这是一个 PnP/Power 线程。

IAdapterPnpManagement::P npstop 在之后调用:

  • 已通知所有微型端口音频子设备。
  • 属于音频子设备的所有流都已停止。
  • 所有 Pnp 接口都已关闭。
  • 所有挂起的 I/O 都已取消。

有关详细信息,请参阅 实现 PortCls 音频驱动程序的 PnP 重新平衡

要求

要求
Header portcls.h
IRQL PASSIVE_LEVEL

另请参阅

IAdapterPnpManagement