调试C#主题
回答
作为调试的替代方法,您可以执行与线程相关的测试。该书The Art of Unit Testing对此有(其中两个他的个人利益)一节附录B中作者提到三个工具:
这取决于你所说的“异常行为”的意思是......
的大部分时间,Visual Studio调试器就足够了。 Threads和CallStack窗口会给你很多关于发生的事情的信息。
对于重负载的东西,你可以使用WinDbg + SOS。阅读!线程,!threadpool和!runaway命令。
如果你有相同类型*你可以修改你的代码的多个线程只能运行每种类型的线程中的一个(或者放它在应用程序的配置文件中,因此您可以在调试时快速更改它)。
如果应用程序仍然行为不当,那么您知道它是造成问题的不同类型的线程之间的交互。如果不是,那么可能有一些资源没有正确锁定线程(例如)。
我想说的是简化你的应用程序,以使用最少数量的线程仍然是你的原始设计。
*不是最好的词来使用,但例如,如果您产卵10个线程来处理文件I/O只产卵1
非常好的建议克里斯先生。 – user186973 2009-10-10 16:59:39
你怎么定义异常行为?这是抛出的异常吗?不知道这是否会对你有所帮助,但是我经常做的是在创建线程对象时命名它,然后如果我捕捉到异常或者存在某些条件,我会写入事件日志。我包括时间,应用程序名称,线程名称和异常信息。我不只用它进行调试,如果用户抱怨奇怪的行为或报告错误,我会使用它。然后我可以回去获取关于它的信息。
- 1. visual C++ 2010调试问题
- 2. Monodevelop C++调试问题
- 3. 的Visual C++调试问题
- 4. C - 调试内存问题
- 5. Turbo C++调试问题
- 6. 如何调试python sphinx主题?
- 7. PhpStorm调试WordPress主题文件
- 8. C++调用主
- 9. C#-Findinding主题
- 10. 协调Kendo主题与jQ UI主题
- 11. 问题调试c字符串?
- 12. 巨大的C文件调试问题
- 13. 问题与调试 - 步入 - C#
- 14. Qt C++ QException问题:调试错误
- 15. gdb问题中的C程序调试
- 16. 网站为C调试难题
- 17. 调试底层C++ DLL中的问题
- 18. C#Microsoft HPC IScheduler - 调试问题
- 19. c#一个简单的调试问题
- 20. 调试Visual C++内存分配问题
- 21. C++调试问题 - pdb文件
- 22. 面试问题; Effective C++的主题是什么?
- 23. 调试问题
- 24. 调试问题
- 25. 调试问题
- 26. 调试问题:(
- 27. C#主题 - 中断
- 28. Objective C调试
- 29. C#,调试HTTPHandler
- 30. 在C#调试
一般通过VS中的中间面板使用这些命令会更舒服(不需要将WinDbg作为单独的进程启动。) – 2009-10-10 17:01:50
@opc:只要您不需要其他WinDbg命令,就是正确的。情况并非总是如此。 – 2009-10-10 17:34:09