线程(任务)之间的关系

时间:2013-08-06 08:18:43

标签: c# .net multithreading asynchronous task

我知道在System.Thread模型中区分线程之间没有任何关系是不可能的,但在Task(Task)模型中也是不可能的。我想分析一个多线程应用程序,我想做的最后一件事是将一些上下文传递给我的所有方法和线程。我很感激任何想法。我想要完成的是:

  1. ThreadMain -750ms(捕获方法调用)
    • Thread1 - 300ms(捕获方法调用)
      • Thread11 - 99ms(捕获方法调用)
      • Thread12 - 20ms(捕获方法调用)
    • Thread1 - 540ms(捕获方法调用)
      • Thread21 - 90ms(捕获方法调用)
      • Thread22 - 60ms(捕获方法调用)
  2. 我很清楚使用Postsharp捕获执行时间,但我想找出父/子线程的关系。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

没有这样的东西,线程是一个线程 - 它没有任何“父”或“子”线程的概念。

答案 1 :(得分:0)

您可以使用NewThreadName.CreatedByThreadName的命名约定命名线程,并使用System.Diagnostics.Process.Threads属性查找与该进程关联的线程。