メイン スレッドから ThreadStart にパラメータを渡す
新しいスレッドを作成してそのターゲット メソッドにパラメータを渡すときは、構文を理解することが重要ですC# で使用できるオプションもあります。次のシナリオを考えてみましょう:
<br>public void download(string filename)<br>{</p> <pre class="brush:php;toolbar:false">// download code
}
スレッド thread = new Thread (新しいThreadStart(download(filename)));
ただし、ThreadStart コンストラクターはパラメーターのないメソッドを予期しているため、このコードはコンパイル エラーになります。それでは、メイン スレッドから ThreadStart メソッドにパラメータを渡すにはどうすればよいでしょうか?
最も簡単なアプローチ: ラムダ式
最も簡単な解決策は、ラムダ式を以下に示すように、ターゲット メソッドを使用します。
string filename = ... Thread thread = new Thread(() => download(filename)); thread.Start();
この手法を使用すると、複数のパラメータをターゲット メソッドに渡すことができ、次のような機能が提供されます。オブジェクトからのキャストを必要としないコンパイル時のチェック。
以上がC# で ThreadStart メソッドにパラメータを渡す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。