可以在C中使用类似#pragma_omp (OpenMP)的for循环
#pragma omp parallel for
for (ii = 0; ii < nrows; ii++){
for(jj = 0; jj < ncols; jj++){
for (kk = 0; kk < nrows; kk++){
array[ii][jj] = array[ii]kk] * array[kk][jj];
}
}
}
应用于SQL Server中的循环?
WHILE (...) BEGIN
END
使用线程实现循环的并行化,如何实现?
发布于 2011-03-04 22:38:56
在存储过程中,我插入了很多注册表,所以我想将其并行化,以控制最大工作进程
。
相反,您应该做的是将工作重新格式化为基于集合的任务,例如在临时表中使用UPDATE/INSERT,其中计算/操作以前行为基础进行封装。然后,SQL Server可以按其认为合适的方式并行化查询。
要控制最大工作线程数,可以查看OPTION MAXDOP
发布于 2011-03-04 20:43:14
在SQL Server中,您应该使用基于集合的解决方案,而不是循环,SQL是一种基于集合的语言。如果从SQL Server外部运行,则可以使用Parallel LINQ (PLINQ)来并行处理其中的一些内容
https://stackoverflow.com/questions/5199006
复制