例程代码
internal class Program
{
static void Main(string[] args)
{
for (int i = 0; i < 10; i++)
{
Task.Run(() => TestMethod());
}
Console.ReadLine();
}
static void TestMethod()
{
for (int i = 0; i < 100; i++)
{
Thread.Sleep(100);
Console.WriteLine($"Curren threadId = {Thread.CurrentThread.ManagedThreadId}, id = {i}");
}
}
}
调试步骤
1、测试断点并运行代码,注意一定要命中后再进行下一步。如果命中后,直接F10运行到下一步时没有效果的。
2、右键断点,选条件。然后条件选择过滤器。
3、条件按提示输入 Thread=3 这里输入的是你要调试的线程id
4、设置好后直接点Close,请勿点击其他
5、然后F10就是单线程运行,双击Threads中的其他线程也可以直接切换
6、取消单线程调试可以另外设一个断点,直接F5即可