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)


  • 相关阅读:
    每周总结
    4月9日学习日志
    4月8日学习日志
    4月7日学习日志
    4月6日学习日志
    Cypress存取时间为10纳秒的异步SRAM
    超低功耗MCU如何降低功耗
    集成铁电存储器MCU为物联网应用提供出色性能
    读取优先和SRAM-MRAM混合结构
    磁阻式随机存储器MRAM基本原理
  • 原文地址:https://www.cnblogs.com/bugchecker/p/3041605.html
Copyright © 2011-2022 走看看