我在辅助(即非GUI)工作线程中使用boost :: asio :: io_service和boost :: asio :: deadline_timer。当程序从Visual Studio(2010)中运行时,这非常有效。但是,当我在Visual Studio外部运行发布可执行文件时,async_wait()/ run()组合似乎没有做任何事情。
我已经确认run()确实阻止了。我现在也确认调试可执行文件工作正常,只有版本可执行文件不起作用(即async_wait()中指定的函数未运行)。
也许有一些项目设置,我需要禁用一些优化,还是什么?
答案 0 :(得分:3)
(重新发表评论,以便将问题标记为已回答)
你可能在某处有一个未初始化的变量,即标量或POD类型的默认初始化对象。