【发布时间】:2011-07-25 13:45:55
【问题描述】:
我有 C++ 代码,它使用 QueueUserWorkItem 来调用一个函数,该函数来自一个调用 winsock 的包装类接受。这在调试中工作正常,如果我使用 Dependency Walker 的 Start Profile 选项运行发布可执行文件,它也可以工作。但是,如果我正常运行发布可执行文件,它会在调用 QueueUserWorkItem 时崩溃。一旦它调用该函数,应用程序就会退出。执行永远不会到达我传递给 QueueUserWorkItem 的函数,但是函数指针是有效的。
有谁知道任何可能导致 QueueUserWorkItem 在发布模式下崩溃但无法调试的情况?
【问题讨论】:
-
涉及 QUWI 并受工具影响的崩溃通常是由线程竞争引起的。改变的时机可以触发它们。
标签: c++ windows release threadpool