在SQL Server和Parallel.Invoke中编写查询

时间:2014-06-25 13:45:29

标签: c# sql-server task-parallel-library

假设我有4个写入查询,并且我使用的代码如下:

Parallel.Invoke(
 () => TheID1s = SomeQuery1(TheData1),
 () => TheID2s = SomeQuery2(TheData2),
 () => TheID3s = SomeQuery3(TheData3),
 () => TheID4s = SomeQuery4(TheData4));

SQL Server是否也在内部并行工作,或者为处理查询编写并行代码最终会在数据库中创建一个一次处理一个查询的队列吗?

1 个答案:

答案 0 :(得分:1)

SQL Server并行处理独立查询,只要它们不会相互阻塞。

查询内并行性也存在,但它仅适用于并行化良好的昂贵查询。

只要数据库服务器有足够的资源来并行处理查询,并行调用数据库是有用的。