別スレッドとパラメータや戻り値のやり取りをするには非同期デリゲートが便利です。ですが、非同期デリゲートは同時に実行できるスレッド数に制限があります。この制限が問題になる場合には、Threadクラスを使うことになると思います。Threadクラスはパラメータや戻り値のやりとりが普通にできないというデメリットを持っています。そこで、別スレッドとパラメータや戻り値をやり取りする便利クラスを考えました。 下のようなクラスを作ります。 public static class ThreadBuilder { public delegate T MethodDelegate<T>(); public delegate void CallbackDelegate<T>(T returnValue); // 戻り値がある場合 public static Thread NewThread<T>(MethodDe