提升线程断点

时间:2016-10-22 10:00:49

标签: c++ multithreading boost

我正在使用visual studio 2015。

我有主循环,我处理与服务器的新连接:

$("#example").DataTable({
        "columns": getTokens(),
        "data": tokens
    });

新的socket连接后,新的HandleRequest线程启动。变量迭代器用于ping与socket的连接(如果收到客户端的任何数据,它将降为零)。 我的问题是: 在我启动程序之前,我可以在迭代器广告上设置断点,但在启动断点后将其删除到if语句(" if(Client_to_handle-> clientSock-> available())")。此外,如果我在" if(Client_to_handle-> clientSock-> available())"并在那里停止程序,然后调试器会说变量迭代器没有定义。如果(iterator> = 10)"并且程序永远不会命中"否则它只是通过它来提升睡眠功能。 为什么我无法定义变量,我的程序拒绝查看else if语句?

$(document).ready(function () {//function and var}

1 个答案:

答案 0 :(得分:1)

(我想评论,但还没有权利!)

你确定你正在运行一个正确的“调试”版本,你仍然保留所有符号吗?可能会发生,您正在启用编译器优化,这可能会导致更改语句的顺序,并可以完全消除变量。

我将链接留给VC ++优化标志:https://msdn.microsoft.com/en-us/library/k1ack8f1.aspx?f=255&MSPPError=-2147217396

检查编译器标志,看看那里是否有/O