以前は同じ問題に直面していました。スレッド化されたアプリがすべてのスレッドに同じコンテキスト オブジェクトを使用している場合、この種の問題に直面します。スレッドごとに個別のコンテキスト オブジェクトを作成します。RAM にさらに負荷がかかる可能性がありますが、明確になります。コンテキスト内のエンティティの状態について。
List<Task> tasks = new List<Task>();
foreach (var item in list)
{
ObjectContext oContext = new ObjectContext("MyConnection");
Task t = Task.Factory.StartNew(() =>
{
this.Update(item,oContext);
});
tasks.Add(t);
}
Task.WaitAll(tasks.ToArray());