我正在使用Parallel.For併發調用如下。parallel.for循環給出超時異常
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
SqlCommand cmd = new SqlCommand();
//SqlDataReader reader;
cmd.CommandType = CommandType.Text;
cmd.Connection = connection;
Parallel.For(0, 100, delegate(int i)
{
//insert into database;
cmd.CommandText = string.Format("insert into Service_LoadTest(id,ServiceCallcount) values ({0},'Call_{1}')", i, i);
cmd.ExecuteNonQuery();
});
插入一些數高達70後,我收到超時異常爲「超時過期。超時時間已過之前,操作完成或服務器沒有響應。」我已經設置了引黃串超時財產,但沒有運氣。請幫忙。
SqlCommand不是線程安全的,你不能這樣做。 –
你是否希望使用'Parallel.For'來加速你的數據庫插入? – Enigmativity
另一端是單寫頭。除非你在另一端有一些奇特的切斷點,否則這將不會更快。打開每個插入連接的解決方案不會更快。 – Paparazzi