在使用C#的过程中,如果动态创建多个线程,如何去手动控制它们呢?                 Thread thread = null ;
            for (int i = 1; i < 5; i++)
            {
                Thread.Sleep(300);
                Print print=new Print(i.ToString());
                 thread = new Thread(new ThreadStart(print.PrintA));
                thread.Start();            }以上code创建了多个线程,但是采用thread.Abort();只能控制其中的一个。
如何分别控制这几个线程呢?

解决方案 »

  1.   

    把创建的多个线程存储到List<>中,然后随便爱干嘛干嘛吧;
      

  2.   

    习惯上称之为句柄。List够干净,习惯上搞成结构体数组或map之类呵呵C++和C#都混着用了
      

  3.   

    尝试了下,OK List<Thread> myThreadList =new List<Thread>();            for (int i = 1; i < 5; i++)
                {
                    Thread.Sleep(300);
                    Print print=new Print(i.ToString());
                    Thread thread = new Thread(new ThreadStart(print.PrintA));
                    myThreadList.Add(thread);            }
                foreach (Thread thread in myThreadList)
                {
                    thread.Start();
                }            Thread.Sleep(5000);
                foreach (Thread thread in myThreadList)
                {
                    thread.Abort();
                }            Console.WriteLine("OK");谢了。