zoukankan      html  css  js  c++  java
  • STATUS_MUTANT_NOT_OWNED

    [关键词]:MUTEX,完成例程,

    [状况]:驱动IoCallDirver之前先WaitForSingleObject以获取MUTEX,然后设置完成例程。在完成例程里ReleaseMutex,系统蓝屏。

    [原因]:“A mutex object can be released only by the thread that currently holds the mutex. ”获取MUTEX的线程和完成例程中试图释放MUTEX的线程不是同一个。

    [Debug过程]:略

    [DUMP]: 部分

                SYSTEM_THREAD_EXCEPTION_NOT_HANDLED (7e)
                This is a very common bugcheck.  Usually the exception address pinpointsthe driver/function that caused the problem.         Always note this address as well as the link date of the driver/image that contains this address.
              Arguments:
              Arg1: c0000046, The exception code that was not handled
              Arg2: 808255e9, The address that the exception occurred at
              Arg3: ba57b964, Exception Record Address
              Arg4: ba57b9b4, Context Record Address

    附ntstatus.h中的错误说明:

    //
    // MessageId: STATUS_MUTANT_NOT_OWNED
    //
    // MessageText:
    //
    //  An attempt to release a mutant object was made by a thread that was not the owner of the mutant object.
    //
    #define STATUS_MUTANT_NOT_OWNED          ((NTSTATUS)0xC0000046L)


  • 相关阅读:
    springMVC+MyBatis+Spring+maven 整合(1)
    mysql.zip免安装版配置
    5.6 循环依赖
    5.5 准备创建bean
    5.4 获取单例
    SQL Server(九)——事务
    SQL Server(七)——存储过程
    SQL Server(八)——触发器
    SQL Server(六)——索引、视图和SQL编程
    SQL Server(五)——常用函数 转
  • 原文地址:https://www.cnblogs.com/bugchecker/p/3041605.html
Copyright © 2011-2022 走看看