2

我需要在 C# 应用程序中更新 SQL Server 数据库中的 20 个表。为了获得更好的性能,我计划使用多个线程来更新表。任何人都可以参考任何为这种操作提供想法的示例链接吗?

另外,根据我的理解,如果我使用多线程,那么我必须为每个线程使用不同的连接对象。在那种情况下,我如何将多个线程放在一个事务中,它们基本上使用不同的连接对象?

4

2 回答 2

1

使用 TPL(任务并行库),这里是一个例子http://safeery2k.wordpress.com/2013/09/17/ado-net-using-tpl/

于 2013-10-18T19:53:01.717 回答
0

一次更新 20 个表非常疯狂。

如果 20 个存储过程是完成需要完成的事情的唯一方法,那么再创建一个存储过程,它将为您调用 20 个存储过程并简单地使用这个存储过程。

这样,如果发生错误/异常,您将能够回滚 mods 并且它现在包含在一个位置 - 很好而且很容易(所有事情都考虑在内)。

我很高兴我不必处理您遇到的这种情况!祝你好运!

于 2013-10-18T19:47:34.563 回答