Val*_*rie 4 sql t-sql sql-server stored-procedures
我应该能够找到答案,但我的谷歌今天很弱.当我通过Web应用程序多次调用相同的存储过程时,是否排队呼叫或者它们是否独立运行?
都.每次调用存储过程(更准确地说,客户端发送的每个请求)都会在SQL中创建一个可见的任务sys.dm_os_tasks.任务被分配给schedulers(sys.dm_os_schedulers)并等待worker(sys.dm_os_workers)可用于运行它们.如果系统非常繁忙,那么任务将排队,这在work_queue_count列中可见sys.dm_os_schedulers.有关详细信息,请参阅线程和任务架构.
在正常操作下,尽管排队效果不可见,因为系统会立即获取提交的任务并开始运行它们.
客户端每个连接只能提交一个请求(MARS是例外,不是规则).因此,从客户端的角度来看,他必须在使用连接时对请求进行排队,但这在程序控制流中是隐藏的(即,它必须等待请求在提交新请求之前返回).
| 归档时间: |
|
| 查看次数: |
2301 次 |
| 最近记录: |