這是我現有的代碼,一些數據保存到多張表SqlConnection的並行編程
using (SqlConnection conn = new SqlConnection("myConnString"))
{
DoWork1(conn);
DoWork2(conc);
DoWork3(conn);
}
爲了加快我的代碼,所以我試圖讓.NET TPL支持,我rehanged我的代碼如下
using (SqlConnection conn = new SqlConnection("myConnString"))
{
ParallelOptions pw = new ParallelOptions();
pw.MaxDegreeOfParallelism = Environment.ProcessorCount;
Parallel.Invoke(pw,()=> DoWork1(conn),()=> DoWork2(conc),()=> DoWork3(conn));
}
但是,這引發了我的數據訪問層中ExecuteNonQuery()方法的內部連接致命錯誤異常。我的並行方法是錯誤的嗎?
「我的平行方法是錯誤的嗎?」 - 很可能。 – 2012-04-20 05:48:02