我正在开发并行处理项目,我正在创建一些线程来运行多个任务。 例如:
Thread t1=new Thread(...);
Thread t2=new Thread(...);
Thread t3=new Thread(...);
现在,我想在此过程中获取正在运行的线程数。我使用以下代码:
label1.Text = Process.GetCurrentProcess().Threads.Count.ToString();
它给了我 13 ,我从这个链接得到了答案,为什么它从以下link返回13:
我的问题:有没有办法获得我在此过程中创建并仍在运行的这些线程的数量?我希望得到 3 ,因为我只创建了3个线程并且它们正在运行。
答案 0 :(得分:1)
您可以在启动/停止线程时将线程添加/删除到List<Thread>
。您将能够查询此列表以获取有关线程的所有信息。这对于你的线程来说是准确的,因为.NET将创建一些自己的线程用于垃圾收集并在线程池中使用。