2013-08-16 94 views
0

的分配因此,這是我一直想知道..迭代變量的名字

說我要10個線程稱爲T1 T2 T3等等...但我不想寫

Thread t1 = new Thread(run); 
Thread t2 = new Thread(run); 
Thread t3 = new Thread(run); 
... 

而像這樣:(僞代碼)

for(int i = 0; i <= 10; i++){ 
    Thread t + i = new Thread(run); 
} 

有沒有辦法做到這一點?

在此先感謝。

編輯:好了,所以這基本上是我想做的事:

static void Main(string[] args) 
    { 
     int n = 0; 
     Program p = new Program(); 
     List<Thread> threads = new List<Thread>(); 

     for(int i = 0; i <= 10; i++) 
     { 
      threads.Add(new Thread(p.run)); 
     } 

     foreach(Thread t in threads) 
     { 
      n++; 
      t.Name = "Thread " + n; 
      t.IsBackground = true; 
      t.Start(); 
     } 

     Console.ReadKey(false); 
    } 

謝謝大家!

+0

最終目標是什麼?只有10個線程? –

+1

這就是爲什麼存在數組和列表的原因。 – Joe

回答

2

不,這是不可能的。爲什麼不是這個?

for(int i = 0; i <= 10; i++){ 
    new Thread(run); 
} 

如果您確實想保留對每個線程的引用,可以將它們存儲在列表中。

+0

嗯...我想這會工作,而迭代時將每一個添加到列表...好的,謝謝! – Adam