2

我正在寻找这样的东西。虽然语法错了,但说明了原理

foreach(int i in myIntArray)
{

execute mystoredProc i;//this should kick off the proc and go onto next one without waiting for a return value

}

这些存储过程是从 Windows 应用程序调用的。我对在应用程序端创建大量线程持怀疑态度。我宁愿在 SQL 服务器端进行线程处理。我愿意使用 SSIS。

4

1 回答 1

1

你不能直接做你要求的事情。

可以做的是启动n线程,然后每个线程打开它自己的连接,每个连接运行它自己的 SQL 查询。然后每个线程将等待它的查询返回。您不能只在一个线程中执行此操作。

这也意味着您不能在 T-SQL 中本地执行此操作。

您可以编写一个启动多个线程的 CLR 例程,然后重复上述过程。因此,让您的 T-SQL 调用您的 CLR 代码和 CLR 处理并发问题。

但是这方面的标准做法确实是拥有多个客户端线程。

于 2012-05-17T22:10:55.093 回答