c# 多线程连接数据库A(mssql2008)每个线程都往一个表里添加记录。 求解决方法。求思路 安案 都行。

最好给几段代码

你问题描述不清楚,那里出问题了?还是不会多线程?还是多线程报错?想别人问题之前自己要先整理出清晰的描述问题的思路,否则很难得到满意的答案哦~~~

创建线程不用多说,我想你肯定知道。
执行插入操作,无非就是在线程中执行 INSERT 语句而已。

注意事项及要点:
1)最好不要多根线程共享一个 Connection 连接对象,否则极可能报错。
2)如果必须多根线程共用一个 Connection 连接对象,必须设置互斥锁。
针对1:在线程方法中创建 Connection 对象,并执行 INSERT 语句。
针对2:用 lock 关键字锁住注资源(如:lock(connection){ 执行 INSERT 语句的代码 })

注1:Connection 对象,不支持多线程并发,因此两个或以上线程同时使用 Connection 对象会发生错误。
注2:利用 lock 关键字的例子,其实就是利用互斥锁保证在某个时间片中,只有一根线程访问连接对象。追问

(如:lock(connection){ 执行 INSERT 语句的代码 })

这个地方不明白。有案例代码啥的吗?
email :[email protected]

追答

// 一次仅允许一根线程进入 lock 语句块,从而防止多根线程同时访问连接对象
lock(connection)
{
// 数据库操作代码
}

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜