

お世話になります。  
あるクラスのメソッドを複数taskで走らせたい時は、一度クラスをnewしたインスタンスを使い、  
複数taskを走らせればよいのでしょうか？  
それとも、taskごとにクラスをnewしてメソッドを使うべきでしょうか？  
クラスの持つ変数の使い方や都合は一切考慮しなくてよい、単純な話になります。

よろしくお願いします。


CC BY-SA 3.0
2017-03-09T06:06:56.177
33206
2017-07-08T13:34:24.433
2017-03-10T02:44:11.613
19110
20665
question
c# .net マルチスレッド
同一メソッドをtask処理で複数走らせたい時


何も考慮しなくて良いなら、１つのインスタンスで複数のタスクを走らせるのが単純です。

そのようなタスクだけで、実際的なアプリケーションが出来るか疑問は残ります。（まぁ、それも考慮する必要がないのでしょうが）


CC BY-SA 3.0
2017-03-09T07:00:16.260
33207
2017-03-09T07:00:16.260
217
33206
answer


> クラスの持つ変数の使い方

通常はこの点が一番重要な判断ポイントで、MSDNなどのリファレンスで「インスタンスメンバー」が「スレッドセーフ」であるかどうかを確認して1インスタンスを使いまわすかどうかを決めます。


CC BY-SA 3.0
2017-03-09T07:07:56.477
33208
2017-03-09T07:07:56.477
5750
33206
answer