concurrentdictionary

    0

    1答えて

    private ConcurrentDictionaryは、いくつかのDBキーの単純なルックアップテーブルです。 私はConcurrentDictionaryを利用して、同じコード行への2回以上のリクエストが同時に行われたときにdbに対して1回の呼び出しを行うようにしています。 (これが私がConcurrentDictionaryを使用している理由です) どうすればいいですか? .... priv

    2

    2答えて

    私はネットワーク経由でロードする必要があるデータを要求する複数のスレッドを持っています。 ネットワークトラフィックが少なくて応答が速いために、私はしばしば要求されるデータをキャッシュします。私はまた、キャッシュのデータサイズを制限したい。 public class DataProvider { private ConcurrentDictionary<string, byte[]> d

    6

    1答えて

    興味深い問題が発生しました。消えたり、複数回現れるかもしれない要素を反復するという望ましくない副作用を伴って、ConcurrentDictionary<TKey, TValue>が安全に列挙可能であることを知り、私はToList()を使って自分でスナップショットを作成することに決めました。 ConcurrentDictionary<TKey, TValue>もICollection<KeyValu

    7

    3答えて

    私はいつもこれらのどれを選ぶべきか混乱しています。私はそれを見るように私はList上Dictionaryを使用し、私はKeyとValueとして2つのデータ型をしたい場合ので、私は簡単にそのkeyで値を見つけることができますが、私はConcurrentDictionaryまたはDictionaryを使用する必要がある場合、私はいつも混乱していますか? これまで多くの研究をしていない私には、私は試しま

    1

    3答えて

    でConcurrentDictionary.Countのパフォーマンスを向上させる方法最近、SortedDictionaryとSortedListのどちらかを選択し、SortedListに解決する必要がありました。 しかし、今私はC#プログラムがSortedList.Countを実行するときにクロールするのが遅いことを発見しました。これは何千回も呼ばれる関数/メソッドを使ってチェックします。 私の

    1

    1答えて

    現在の.net ConcurrentDictionaryをラップする新しいクラスを作成して、GetOrAdd \ AddOrUpdateのAddデリゲートが1回だけ呼び出されるようにします。私はネット上でいくつかのソリューションを見てきましたが、主なものはTValueを怠惰なものにすることで、多くの怠惰なアイテムが追加されるかもしれませんが、生き残りと価値のあるファクトリーを呼び出すだけです。ここ

    1

    1答えて

    私のwebapiは要求をフルフィルするために重い操作のセットを実行する必要があります。処理時間を最小限に抑えるために、私は「ビューカウンタ増分」をWebジョブにオフロードします。 現在、私がやっているのは、各要求の最後に、空白のキューストレージにuserIdとproductIdというメッセージをエンキューすることです。 webjob関数は新しいキューメッセージをトリガし、メッセージを解析した後、静

    -1

    1答えて

    ConcurrentDictionaryを使用して、キャッシュされたデータを保持することを検討していますが、これは低速のソース(データベースなど)に由来します。 データベースの呼び出しはasyncです。したがって、アイテムがディクショナリに存在しない場合は、同時ディクショナリコールで非同期メソッドを呼び出すことは可能ですか?例えば : const int userId = 1; var cach

    -1

    1答えて

    ConcurrentDictionary(文字列、リスト)の各項目を取得するスレッドセーフな方法が必要です 次の構成を使用すると安全ですか? foreach (var item in concurrentDict) { var readonlyCollection = item.Value.AsReadOnly(); //use readonly collection, (I

    2

    2答えて

    私はConcurrentDictionaryを持っています。ConcurrentDictionaryはint型のハッシュセットをキーとしてlong型の値を持ちます。キーが辞書にない場合は、最初の要素で新しいハッシュセットを追加します。キーが存在する場合は、新しい要素を既存の辞書に追加します。 .Add()メソッドは、BOOLを返し、AddOrUpdateはHashSetのを期待しているため、 Co