sql >> データベース >  >> RDS >> PostgreSQL

ConcurrentQueueのPLINQはマルチスレッドではありません

    assertQueueの列挙だけを並列化しています それ自体を「非並列化」して、通常のIEnumerableに戻します。 。これはすべて、foreachの前に発生します ループも始まります。次に、通常のIEnumerableを使用します foreachを使用 ループの本体をシリアルに実行します。

    ループの本体を並行して実行する方法はたくさんありますが、最初に頭に浮かぶのはParallel.ForEachを使用することです。 :

    Parallel.ForEach(arrestQueue, arrest =>
        {
            Geocoder geocodeThis = new Geocoder(arrest);
            writeQueue.Enqueue(geocodeThis.Geocode());
            Console.Out.WriteLine("Enqueued " + ++k);
        });
    


    1. 過去1時間に追加された行のフェッチ

    2. MySQLで文字列の左または右の部分を返す方法

    3. 一連の更新の最後にトリガーを起動するにはどうすればよいですか?

    4. SQLServer-既存および将来のすべてのデータベースへの読み取りアクセスのログイン許可を与える