私はそれを正しく言いましたかどうか分かりませんが、単純な例として、Point3値の集合(たとえば1M)があるとしましょう。より良いマルチスレッド:単一の関数またはコレクション関数
Offsetというメソッドがあり、これらの値に別のPoint3値を追加し、新しいPoint3値を返します。メソッドが静的であるとしましょう。
Point3タイプは不変です。
質問は、私はこのような方法を持っている必要がありますされています。私には
public static Point3 Offset (Point3 a, Point3 b)
または
public static IEnumerable<Point3> Offset (IEnumerable<Point3> a, IEnumerable<Point3> b)
を#1異なるスレッドに対して個別のタスクにタスクを打破するために、より良い選択のように思えます。
あなたはどう思いますか? #1や#2のメリットは?
どこにマルチスレッドが入っているのですか? – chris166
コレクション内の多数のアイテムに対する操作をアプリに適用します。 –
列挙子がスレッドセーフであれば、2番目のパラレル化しかできないので、私は尋ねました。 Avishからの回答を参照 – chris166