IAdapterPnpManagement::P npStop 方法(portcls.h)
PnpStop 方法在停止所有 Ioctl作并将活动流从 run|pause|acquire 状态移动到停止状态后提供通知。
语法
void PnpStop();
返回值
没有
言论
停止所有 Ioctl作并将活动流从 run|pause|acquire 状态移动到停止状态后,Portcls 将 PnpStop 调用。 保存设备全局锁时不会进行此调用。 因此,微型端口驱动程序有机会等待其异步作(工作项、dpc、异步线程)并取消注册其音频子项。 从此调用返回之前,微型端口必须确保所有硬件资源都已发布。
微型端口不得等待当前微型端口/流对象被删除,因为目前还不清楚现有音频客户端何时释放当前句柄。 在系统崩溃的情况下,PnpStop 线程无法永久阻止,即这是 PnP/Power 线程。
在后面调用 IAdapterPnpManagement::P npstop:
- 已通知所有微型端口音频子项。
- 属于音频子目录的所有流都已停止。
- 所有 Pnp 接口都已关闭。
- 所有挂起的 I/O 都已取消。
有关详细信息,请参阅 为 PortCls 音频驱动程序实现 PnP 重新均衡。
要求
要求 | 价值 |
---|---|
标头 | portcls.h |
IRQL | PASSIVE_LEVEL |