私はマルチスレッドアプリケーションで作業していましたが、複数のスレッドによって使用され変更されているリストを処理するための最も効果的な方法をまだ試しています。マルチスレッドアプリケーションとスレッドセーフリスト
私は、ListのThreadsafeクラスを書くことは本当に最良の選択肢ではないことを知りました。正直言って、ロックはやや乱雑です。
私はこれをConcurrentDictionaryに変換しようと考えていましたが、これは本当にうまく動作するようです。
しかし、私は別のアプローチを試みたし、それは奪うオプションだかない場合は、この上でいくつかの意見を聞きたい:
if(MyList.Count > 0)
{
MyStruct[] Example = null;
Example = new MyStruct[MyList.Count];
MyList.CopyTo(Example, 0);
foreach(MyStruct B in Example)
//Code here
}
これは私が仕事にしようとしたように見えただけで何かであります実際に他の場所に変更を加える必要はありません。私もこれを行う必要があるかどうか分からないので、これについていくつかの意見を探しているのです
私は特にポイント10とコメントがあります "ライオンズがあります"。 – sr28