Loading [MathJax]/extensions/tex2jax.js

2011-10-28

[C#]スレッドプログラミング

C#でマルチスレッドプログラミングをする方法です。記述自体は特になにも難しいことはありません。
Thread threadA = new Thread(new ThreadStart(ThreadMethod)); //
threadA.Start();
// 別スレッドで動作させるメソッド
private void ThreadMethod() {
//ここに処理を書く
}
なお記述は簡単ですが、マルチスレッドのプログラミング自体は難しいです。安易に考えていると予期しない動作をすることがあるので注意してください。 また、スレッドにデータを渡す方法ですが別スレッドで呼び出すメソッドに引数などを定義することはできません。一番簡単な方法は同一のクラス内でマルチスレッドのメソッドを定義しているのであれば、クラス変数を利用してデータの授受をすることは可能です。 本格的にプロセス間通信をする場合はちょっとひと工夫必要ですので、それは後日取り上げたいと思います。

0 件のコメント:

コメントを投稿