私はint配列のリストを持っています。リストは1〜4のアレイであり得る。 個々のスレッドで各配列を合計する方法と、加算された値を新しいint配列に配置することについては、 を知りたいと思います。C#コンソールアプリケーション内の各配列のスレッドを使用した整数配列のリストの集計
答えて
あなたはこのコードは、あなたが求めるものを行います例
List<int[]> arraysList = new List<int[]>();
arraysList.Add(new int[] { 2, 3, 5 });
arraysList.Add(new int[] { 2, 3, 5, 9, 123, 5 });
arraysList.Add(new int[] { 3 });
arraysList.Add(new int[] { 9,8 });
ConcurrentBag<int> SummedValueOfEveryArray = new ConcurrentBag<int>();
Parallel.ForEach(arraysList, array =>
{
SummedValueOfEveryArray.Add(array.Sum());
});
//Your result
var result = SummedValueOfEveryArray.ToArray<int>();
//The sum of all arrays
var totalSum = SummedValueOfEveryArray.Sum();
ありがとうございます。可能であれば、私は標準化されたスレッド方法を望んでいました。 –
@RyanRichard「標準化法」とはどういう意味ですか? ここにはすべての配列のための1つのシアードがあります(4または4000があるかどうかは関係ありません) PS:prof1990の答えは最終的な配列の順序が保たれているのでいいです – user244943
を持つ新しい配列の順序はここでは重要ではない場合。ただし、.Netがパフォーマンスを向上させることができると判断した場合にのみ、これは並列化されます。
List<int[]> intlist = new List<int[]>();
int[] result = intlist.AsParallel().Select(arr => arr.Sum()).ToArray();
1から4の配列が与えられていると仮定すると、.Netは並列化のポイントを決して見ないことがあります。しかし、絶対に必要な場合は、以下のようにParallel.Forを使用して並列化を強制することができます。
List<int[]> intlist = new List<int[]>();
int[] result = new int[intlist.Count];
Parallel.For(0, intlist.Count, i =>
{
result[i] = intlist[i].Sum();
});
"与えられた1から4の配列には非常に小さな点があります。 " - 非常に間違っています。予想される利得は、それらのアレイの長さだけに依存する。 –
ポイント、それを変えて、私が執筆中に寝ていたと思う – prof1990
- 1. 整数配列内のサブ配列の合計を求める
- 2. C++配列を使用しないユーザ定義の配列の整数
- 3. パイソン - 混合配列内の値の各発生を見つける(整数、リスト)
- 4. 配列内の各要素/整数に数値を加える
- 5. アトミック整数配列のスレッドを使用する
- 6. 整数配列内の各要素のJavaカウントの発生
- 7. 集計配列
- 8. 列内の行および/またはクロス集計配列を
- 9. 配列の数値を集計する
- 10. 配列内の各値の出現数を計算する
- 11. 配列内の配列を数え、合計します。MongoDB NodeJS
- 12. のMongoDB:集計配列
- 13. CodeIgniter:配列内の配列を使用
- 14. 配列内の整数の差JAVA
- 15. OpenMp - 各スレッドのループ/配列の境界
- 16. 関数内のC++配列
- 17. は集計配列
- 18. Cの整数配列を渡す++ DLL
- 19. lodashを使用した配列内部の配列
- 20. カスタムキーを使用したC#の配列またはリスト
- 21. 配列内の変数を集める
- 22. スレッド内のグローバル配列
- 23. 配列を集計する - Objective-C
- 24. Postgresの配列列から集計された別個の値の配列
- 25. 文字列配列を使用したソート関数 - Cのエラー
- 26. 配列リスト(画像操作)なしの2D配列インスタンス変数サイズの編集
- 27. 整数と文字列を使用した多次元配列
- 28. C++の2次元整数配列
- 29. PHPコロンを使用した配列内の変数を使用
- 30. 配列内の各オブジェクトの属性の合計を求める
"summed value"または "summed values"?違いが生じます。コードのアウトラインを提供することに害はありません。 –
申し訳ありませんが、合計値は –
です。質問を編集するには遅すぎることはありません。 –