1

C#で新しいスレッドを作成して開始するために、以下のように動作します:

using System.Threading;

Thread thread = new Thread(new ThreadStart(WorkThreadFunction));
thread.Start();

public void WorkThreadFunction()
{
  //Stuff Here
}

しかし、引数を持つメソッドはどうでしょうか。
これらのメソッドの場合、以下のコードにエラーがあります。

using System.Threading;

int a = 5;
int b = 6;
Thread thread = new Thread(new ThreadStart(WorkThreadFunction(a, b)));
thread.Start();


public void WorkThreadFunction(int a, int b)
{
  //Stuff Here
}

エラー :

メソッド名が必要です

それらのパラメータをそのメソッドに渡す必要があります!
解決策は何ですか?

前もって感謝します

4

1 に答える 1

4

メソッドの呼び出しをパラメーターでカプセル化するには、ラムダ式を使用します。

Thread thread = new Thread(new ThreadStart(() => WorkThreadFunction(a, b)));
于 2012-06-16T14:37:00.177 に答える