それについてはIsAliveプロパティ


今日マルチスレッドについて議論するとき,この属性について述べた.IsAliveは、名前の通りスレッドが現在使用可能な状態であるかどうかを示し、スレッドが起動し、現在異常がない場合はtrueを返し、そうでない場合false
なぜこの属性を理解するのかは、次のコードの友达が理解していないからです.
共有リソースの競合に関する次のコードで示す複数のスレッドの問題の詳細は、ここでは詳細に説明しません.
            Thread thread1 = new Thread(new ThreadStart(SomeMethod));
            Thread thread2 = new Thread(new ThreadStart(SomeMethod));
            Thread thread3 = new Thread(new ThreadStart(SomeMethod));
            Thread thread4 = new Thread(new ThreadStart(SomeMethod));
            Thread thread5 = new Thread(new ThreadStart(SomeMethod));

            thread1.Name = "Thread 1";
            thread2.Name = "Thread 2";
            thread3.Name = "Thread 3";
            thread4.Name = "Thread 4";
            thread5.Name = "Thread 5";
            thread1.Start();

            while (!thread1.IsAlive)
                Thread.Sleep(100);

            thread2.Start();
            while (!thread2.IsAlive)
                Thread.Sleep(100);

            thread3.Start();
            while (!thread3.IsAlive)
                Thread.Sleep(100);

            thread4.Start();
            while (!thread4.IsAlive)
                Thread.Sleep(100);

            thread5.Start();
            while (!thread5.IsAlive)
                Thread.Sleep(100);
 
        ,   Thread.Start  ,  while    Alive ?          ,         。
     ,     Start,             (  CPU        ),           ,