是否有可能破坏Visual Studio 2010 Ultimate中的所有线程?
我的应用程序中的一个线程正在运行TCP代理。当客户端(连接到我的代理)每隔几秒钟没有发送保持活动数据包时,它连接的服务器将断开连接。
所以我需要打破所有其他线程(比如数据包处理),以便我可以编辑该部分而不会断开连接。
这是否可以在没有附加组件的情况下实现?
答案 0 :(得分:4)
看起来不可能。有关同一问题的先前讨论,请参阅Breaking single thread。
答案 1 :(得分:4)
可能有效的一个解决方案是编写一个宏,当你停在BP时,你会调用一个函数来评估一些发送一些保持活动数据包的函数。
E.g。你的宏就像
DTE.Windows.Item(“{ECB7191A-597B-41F5-9843-03A4CF275DDE}”)。激活()'立即窗口 DTE.ExecuteCommand(“Debug.Print”,“KeepAliveFunc()”)
这显然不理想,但如果没有别的帮助......
答案 2 :(得分:1)
当您在调试器中全部中断时,在线程窗口中,右键单击您不想运行的所有线程并选择冻结,然后继续运行,只有您的目标线程将运行。
答案 3 :(得分:1)
可能只是在线程中放置一个while循环,您希望通过计时器暂停,以输出有关文本框上某些变量的数据。然后让按钮在循环之间步进?
只是一个想法。