我有一个应用程序经常从 sql 视图中请求大量行 [大约 20K],与此同时其他应用程序无法更新数据来自的表,更新查询被来自的选择阻止其他应用程序。
等待代码是“ASYNC_NETWORK_IO”,我发现它被描述为我正在发生的事情,我引用:
这通常是 SQL Server 等待客户端完成使用数据的地方。可能是客户端请求了非常大量的数据,或者只是由于编程不当而消耗数据的速度非常慢。
客户端通常一次处理一行,而不是在客户端缓存数据并立即向 SQL Server 确认。
我的问题是,为什么 sql server 在允许对表进行更新之前等待客户端完成该选择作业的处理?这是我可以更改的设置或配置吗?