c#実装クエリ実行スレッド数

5244 ワード

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             List<Thread> list = new List<Thread>();
 6             for (int i = 0; i < 200; i++)
 7             {
 8                 Thread t = new Thread(testThread);
 9                 t.Start();
10                 list.Add(t);
11             }
12             Thread t3 = new Thread(() =>
13             {
14                 while (true)
15                 {
16 
17                     Thread.Sleep(1000);
18                     int count = 0;
19                     foreach (var item in list)
20                     {
21                         if (item.ThreadState == ThreadState.Running)
22                         {
23                             count++;
24                         }
25                     }
26                     Console.WriteLine(" " + count);
27                 }
28             });
29             t3.Start();
30             Console.ReadLine();
31         }
32 
33         static void testThread()
34         {
35             while (true)
36             {
37                 Thread.Sleep(20);
38             }
39         }
40     }