1

所以我正在创建一个名为Operator此类的类,其中包含固定数量的不同线程。

我想要一个在我的 Operator 中通过循环遍历数组来启动我所有线程的方法。

我是 C# 新手,似乎无法完成这项工作,我最初是一名 java 程序员,在 java 中我可以这样做:

    Private Thread[] threadArray;
    Public someConstructor(){
   Thread t1 = new Thread();
   Thread t2 = new Thread();
this.threadArray = new Thread[t1, t2]


} 
public void runThreads(){

    for (Thread t : threadArray) {
        t.start();
    }
}

但是,在 C# 中我无法做到这一点,这是我的代码示例:

   private Thread tHenvendelser;
    private Thread[] threadArray;
    /// <summary>
    /// Operator constuctor.
    /// </summary>
    /// 
    public Operator() { )
    this.tHenvendelser = new Thread()
    this.threadArray = new Thread[tHenvendelser];
    }
4

1 回答 1

3

在这里,您正在创建一个包含“tHenvendelser”数量的数组。

this.threadArray = new Thread[tHenvendelser];

我怀疑(很难说)你真的想要:

this.threadArray = new Thread[1];
this.threadArray[0] = tHenvendelser;

或简写:

this.threadArray = new Thread[] { tHenvendelser };

...当我们这样做时,C# 语法foreach将是:

public void runThreads()
{
  foreach(Thread t in threadArray) {
    t.start();
  }
}
于 2013-06-25T14:13:37.897 回答