关于VS2005里C# 多线程调试

computerre 2010-11-19 11:14:36
情况是这样的:
主线程在运行到某个阶段新建了一个新的线程
现在想跟踪新的线程中的一步一步的运行情况(在新线程中的某个位置设置了断点),遇到三个情况:
1、主线程进入新线程时仿佛很慢,有时几十秒,有时根本就没有反映了
2、新线程中设置的一些变量,在线程运行的过程中想看看他们的值,但是总是提示"由于以前的函数求值超时,函数求值被禁用。必须继续执行才能重新启用函数求值。"
3、在新线程中再单步调试好像没有反映

请教高手赐教!
...全文
530 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
兔子-顾问 2010-11-19
  • 打赏
  • 举报
回复
线程中加断点。有些需要涉及到同步的代码。考虑写测试代码。记录成某个变量查看。等待几十秒,你要看看哪里耗时了。肯定不是现成调度和启动。
Dobzhansky 2010-11-19
  • 打赏
  • 举报
回复
调试器一般自己在一个线程上,
可以用来调试一个目标线程.

引入多线程, 让问题大大复杂化, 目前的 ide 多并行程序的调试支持较弱.

你不妨采用输出日志文件的方式,
让程序回归到本来面目.

log4net 是一个很好的日志库, 网上好多教程.
computerre 2010-11-19
  • 打赏
  • 举报
回复
能说的清楚点么?
bu88dong 2010-11-19
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dobzhansky 的回复:]
多线程程序调试是麻烦事,
这种情况, 我用输出 log的方式
log4net 你试试.
[/Quote]
这个不错。
Dobzhansky 2010-11-19
  • 打赏
  • 举报
回复
多线程程序调试是麻烦事,
这种情况, 我用输出 log的方式
log4net 你试试.
computerre 2010-11-19
  • 打赏
  • 举报
回复
怎么大家都没有遇到过么?

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧