互斥对象的替代方案

快速互斥体和受保护的互斥体可用作互斥对象的替代项。 快速互斥体或受保护的互斥体可以比互斥对象更快地获取和释放,但它们具有以下限制:

  • 驱动程序不能使用 KeWaitForSingleObjectKeWaitForMultipleObjects 例程来等待快速或受保护的互斥体。 因此,驱动程序无法同时等待快速或受保护的互斥体和调度程序对象。

  • 驱动程序无法以递归方式获取快速或受保护的互斥体。 如果驱动程序尝试获取已获取的快速或受保护的互斥体,驱动程序将死锁。 但是,可以递归方式获取互斥对象。

有关快速互斥体和受保护的互斥体的详细信息,请参阅 快速互斥体和受保护的互斥体