gpt4 book ai didi

c# - 如何在 Visual Studio 中调试单线程?

转载 作者:IT王子 更新时间:2023-10-29 03:29:04 26 4
gpt4 key购买 nike

我有一些项目的解决方案。在不同的项目中有几个断点。我想跟踪第一个线程命中其中一个断点并继续跟踪该单个线程,尽管其他线程进入相同的代码块。

我知道这可以通过在断点上定义一个条件来实现,即线程名称 = ... 或线程 ID = ... 但我的情况负载很重 ASP.NET应用程序,一旦我附加到 w3wp.exe许多线程会遇到断点。我需要像 ThreadLocal<break-point> 这样的东西.

这可能吗?如果是,怎么办?

最佳答案

这是我做的:

  1. 设置一个条件断点 知道只会​​命中线程 我正在寻找的。

  2. 一旦断点命中并且您处于所需的线程中,在 Visual Studio 线程窗口中(调试时,调试 -> Windows -> 线程),Ctrl + A(选择所有主题),然后 Ctrl + 单击您当前所在的主题。您应该选择除要调试的线程之外的所有线程。

  3. 右键单击,然后选择“卡住”。

现在,Visual Studio 将仅单步执行解冻的线程。这样做似乎要慢得多,大概是因为它必须循环遍历所有卡住的线程,但它给我的多线程调试带来了一些理智。

关于c# - 如何在 Visual Studio 中调试单线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5304752/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com