IReplyChannel.BeginWaitForRequest(TimeSpan, AsyncCallback, Object) 方法

定義

開始非同步的要求作業,這項作業具有已指定逾時以及與該作業關聯之狀態物件的訊息。

public:
 IAsyncResult ^ BeginWaitForRequest(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWaitForRequest (TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginWaitForRequest : TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginWaitForRequest (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

參數

timeout
TimeSpan

TimeSpan,指定等候接收可用要求的時間間隔。

callback
AsyncCallback

AsyncCallback 委派,這個委派會接收要求作業完成之非同步接收的通知。

state
Object

應用程式所指定的物件,其中包含與要求作業之非同步接收相關聯的狀態資訊。

傳回

IAsyncResult,參考非同步作業以等候要求訊息到達。

範例

下列程式碼說明如何實作這個方法:

public IAsyncResult BeginWaitForRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
    return this.InnerChannel.BeginWaitForRequest(timeout, callback, state);
}

備註

當目前的執行緒可接受進行封鎖並同時等候要求訊息到達佇列時,請使用同步的 WaitForRequest(TimeSpan) 方法。 執行緒會持續封鎖,直到指定的 timeout 為止。

這個方法會透過回呼 (Callback),接收有關作業之事件處理常式身分識別的通知。 在要求訊息可以於通道中使用或發生逾時之後,作業才會完成。

給實施者的注意事項

如果超出了指定的 false,作業會傳回 timeout

適用於