即使當我指定接收頂端(25)等時,我一次只能收到一條消息。不知道我在我的sproc裏面做錯了什麼?可能有些微不足道,但我沒有看到問題。服務代理一次只接收一條消息
存儲過程:
CREATE PROCEDURE dbo.SPP_DEQUEUE_MESSAGE
AS
BEGIN
DECLARE @receiveTable TABLE(
message_type sysname,
message_body xml,
message_dialog uniqueidentifier);
BEGIN TRANSACTION;
WAITFOR
(RECEIVE TOP(25)
message_type_name,
message_body,
conversation_handle
FROM TargetQueue1DB
INTO @receiveTable
), TIMEOUT 3000;
SELECT
*
From @receiveTable;
Delete from @receiveTable;
COMMIT TRANSACTION;
END --End Sproc
任何想法,我做錯了什麼?
感謝,
乙
感謝Pawel我會看一看。我沒有看到那部分......這可能是正在發生的事情。 – scarpacci 2010-12-16 15:47:53
您能否提供這方面的例子?我們從表INSERT觸發器發送消息,因此必須爲每個INSERT創建一個單獨的對話。我希望批量接收所有可能的消息,但這並未發生,我也看不到如何在單個組中移動會話(即使在BEGIN DIALOG中使用WITH RELATED_CONVERSATION_GROUP) – Mikhail 2016-06-21 09:02:24