gpt4 book ai didi

c++ - App Verifier 报告 "Thread cannot own a critical section."

转载 作者:行者123 更新时间:2023-11-30 01:32:53 24 4
gpt4 key购买 nike

所以 App Verifier 抛出了这个异常。据我所知,这条消息的文本有点误导。问题似乎是关键部分是由在关键部分被销毁之前被销毁的线程创建的。

这是一个相对简单的修复,但有谁知道创建线程以外的线程会破坏关键部分的后果是什么?有多危险?只是担心关键部分句柄会“泄漏”还是存在更隐蔽的副作用?

一些其他信息:

  • 用 C++ 编写的应用程序(当然是在 Windows 上)
  • 使用 InitializeCriticalSelection 创建的临界区
  • 关键部分最终用 DeleteCriticalSection 删除

最佳答案

我相信您对消息的解释是正确的。我能找到的唯一引用如下。正如作者所建议的,堆栈跟踪是一个很好的线索

我仔细研究了一下,没有找到无法在不同线程上创建和删除临界区的具体原因。但是我确实想知道你为什么要这样做?可以这么说,让一个线程拥有一个关键部分似乎是最佳实践。在线程之间移交关键部分引入了另一种通信方式和潜在的错误(可以做到,只是更有趣)。

关于c++ - App Verifier 报告 "Thread cannot own a critical section.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/920740/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com