C# で Dictionary に 1000000 個の値を追加しながら、メモリ使用量とパフォーマンスを改善する方法。
巨大なレコードを追加しているときに、「システムのメモリ不足」という例外が発生します。
誰でもこれを手伝ってもらえますか。
私の辞書は以下のようになります。
Dictionary<string, List<string>>
前もって感謝します。
C# で Dictionary に 1000000 個の値を追加しながら、メモリ使用量とパフォーマンスを改善する方法。
巨大なレコードを追加しているときに、「システムのメモリ不足」という例外が発生します。
誰でもこれを手伝ってもらえますか。
私の辞書は以下のようになります。
Dictionary<string, List<string>>
前もって感謝します。
辞書で何をエンコードしていますか? どのように追加していますか?おそらく、Linq 拡張機能のToLookupの方が適しているかもしれません。ILookupは、多かれ少なかれ、IDictionary<TKey,IList<TValues>>
それ以外の場合...辞書のサイズを設定するときは明示してください:
new Dictionary<string,List<string>>(int capacity)
また、そこに保存する List インスタンス
new List<string>(int capacity)
これにより、増大するアルゴリズム (容量に達すると容量が 2 倍になる) が展開されてメモリがスラッシングされるのを防ぎます。