sql >> Databasteknik >  >> RDS >> Sqlserver

System.Data.Entity.Infrastructure.CommitFailedException:C# Multithreading &SQL Server 2012

Jag brukade möta samma problem. Om den trådade appen använder samma kontextobjekt för alla trådar möter vi den här typen av problem. Skapa separata sammanhangsobjekt för varje tråd. Du kanske lägger till lite mer belastning på ditt RAM-minne men det ger klarhet om tillstånd för enheter i kontext.

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());



  1. Best Practices för PostgreSQL-revisionsloggning

  2. CodeIgniter flerdimensionell array lagra i mysql databas en kolumn

  3. SQL-utvecklare för import från Excel

  4. Structured Query Language – Vikten av att lära sig SQL