【发布时间】:2020-05-03 10:35:42
【问题描述】:
我有一个 SQL 数据库表,假设它包含 3000 条记录,现在我想用 3 个线程处理所有这些记录。像这样在第一个线程中处理 1000 条记录。 在 c# 多线程中怎么可能?
【问题讨论】:
-
SQL Server 是多线程的,因此只有在数据传输限制速度的情况下,创建额外的线程才会加快进程。加速应用程序的最佳方法是使用比 SQL 客户端类更快的实体。
-
@jdweng 使用比 SQL 客户端类更快的实体 任何来源?如果 Entity 建立在顶级 SQL 客户端类之上,如何更快?
-
实体不是在 SQL 客户端上构建的。实体基于不同驱动程序的 db 上下文构建。
-
那是什么处理?是CPU-bound or I/O bound吗?
-
实体建立在 Microsoft.Data.SqlClient 之上...显然直接使用 Microsoft.Data.SqlClient 会更快
标签: c# multithreading