本文件已封存並已停止維護。
BEGIN CONVERSATION TIMER (Transact-SQL)
SQL Server 2005
啟動計時器。當逾時到期,Service Broker 會將一則 http://schemas.microsoft.com/SQL/ServiceBroker/DialogTimer 類型的訊息放在交談的本機佇列中。
交談計時器提供一種方式,供應用程式在特定時間量之後,接收交談的訊息。在計時器到期之前,在交談上呼叫 BEGIN CONVERSATION TIMER,會將逾時設為新值。這不像交談存留期間,交談的每一端都會有獨立的交談計時器。DialogTimer 訊息到達本機佇列時,不會影響交談的遠端。因此,應用程式可以為了任何目的而使用計時器訊息。
例如,您可以利用交談計時器,使應用程式不會為了逾期回應而等待太久。如果您預期應用程式會在 30 秒內完成對話,您可以將這項對話的交談計時器設為 60 秒 (30 秒加上 30 秒的寬限期)。如果在 60 秒之後,對話仍在開啟狀態,應用程式會在這項對話的佇列上,收到一則逾時訊息。
另外,應用程式也可以利用交談計時器,要求在特定時間啟動。例如,您可以建立一項服務,每隔幾分鐘報告使用中的連接數目,或建立一項服務來報告每個晚上開立的採購單數目。服務會設定一個在所需時間到期的交談計時器;當計時器到期,Service Broker 會傳送一則 DialogTimer 訊息。DialogTimer 訊息會使 Service Broker 啟動佇列的啟動預存程序。這個預存程序會傳送一則訊息給遠端服務,且會重新啟動交談計時器。
在使用者自訂函數中,BEGIN CONVERSATION TIMER 無效。
顯示:

