2012-01-23 22 views
0

我的工作與連接到一個大表SqlDependencies項目...的SqlDependency和WaitFor的接收

當這些依賴關係被激活,我在SSMS活動監視器看到這種要求在最近昂貴查詢:

WAITFOR(RECEIVE TOP (1) message_type_name, conversation_handle, cast(message_body AS XML) as message_body from [SqlQueryNotificationService-d1bd009f-3cb4-42af-85d8-38a4b15ca399]), TIMEOUT @p2; 

而且平均時間接近60秒。

這是正常的嗎?這是因爲後面有一個工作線程嗎?

謝謝。

回答

2

是的,這是正常的。 SqlDependency在內部使用SQL Server排隊機制。

WAITFOR(RECEIVE ...)是SQL命令,用於等待Sql Server隊列中到達的消息。