我已经使用 vb.net 编写了一个任务脚本,该脚本在代码中使用了线程,问题是我如何知道何时完成所有线程,以便我可以返回成功结果。
非常感谢。
我认为您需要使用 waitHandle 对象和 waitAll 方法
更多信息在这里:http: //msdn.microsoft.com/en-us/library/system.threading.waithandle.aspx
话虽如此,我怀疑您可以重构包的设计以让脚本任务处理执行,并让 SSIS 处理执行调度。这为您提供了所需的并行性,而无需在 .net 中进行多线程编程。
一个简单的设置将是 n 个 foreach 循环(串行执行),每个循环运行一个分区的工作负载块。
另一个更简单的选择是让包由变量驱动并产生包的多次执行。这可能发生在 1-N 个服务器上以进行横向扩展。