boost :: asio仅在Visual Studio中运行时才有效

时间:2011-07-08 23:03:22

标签: c++ visual-studio multithreading boost boost-asio

我在辅助(即非GUI)工作线程中使用boost :: asio :: io_service和boost :: asio :: deadline_timer。当程序从Visual Studio(2010)中运行时,这非常有效。但是,当我在Visual Studio外部运行发布可执行文件时,async_wait()/ run()组合似乎没有做任何事情。

我已经确认run()确实阻止了。我现在也确认调试可执行文件工作正常,只有版本可执行文件不起作用(即async_wait()中指定的函数未运行)。

也许有一些项目设置,我需要禁用一些优化,还是什么?

1 个答案:

答案 0 :(得分:3)

(重新发表评论,以便将问题标记为已回答)

你可能在某处有一个未初始化的变量,即标量或POD类型的默认初始化对象。