std::mutex 加锁抛 _DEVICE_OR_RESOURCE_BUSY 异常

清泛原创

最近遇到一个崩溃,在 std::lock_guard<std::mutex> lock(mutex_); 的地方,抛出了  _DEVICE_OR_RESOURCE_BUSY 的异常。最终查出原因是:同一个线程对同一个mutex二次加锁导致的。


Windows平台下同线程二次加锁会抛出异常,程序崩溃;Linux下则会发生死锁现象。
参考以下文章:
https://stackoverflow.com/questions/31205040/shouldnt-this-code-lead-to-a-deadlock

mutex deadlock

分享到:
评论加载中,请稍后...
创APP如搭积木 - 创意无限,梦想即时!
回到顶部