IReplyChannel.BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したタイムアウトと状態オブジェクトが関連付けられている要求メッセージを受信する非同期操作を開始します。
public:
IAsyncResult ^ BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginTryReceiveRequest : TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginTryReceiveRequest (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult
パラメーター
- callback
- AsyncCallback
非同期の通知を受け取る AsyncCallback デリゲートは、要求操作が完了したことを受け取ります。
- state
- Object
要求操作の非同期受信に関連付けられた状態情報を含む、アプリケーションによって指定されたオブジェクト。
返品
非同期受信要求操作を参照する IAsyncResult 。
例
次のコードは、このメソッドを実装する方法を示しています。
public IAsyncResult BeginTryReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
TryReceiveRequestAsyncResult result = new TryReceiveRequestAsyncResult(this, timeout, callback, state);
result.Begin();
return result;
}
注釈
待機せずにアプリケーション処理を続行する必要がある場合は、非同期 BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) メソッドを使用します。 要求メッセージへの応答中、またはタイムアウト間隔を超えるまで、現在のスレッドがブロックされる可能性がある場合は、同期 TryReceiveRequest(TimeSpan, RequestContext) メソッドのいずれかを使用します。
このメソッドは、コールバックを介して、操作のイベント ハンドラーの ID の通知を受け取ります。 チャネルでメッセージが使用可能になるか、タイムアウトが発生するまで、操作は完了しません。
注意 (実装者)
指定したfalseを超えた場合、操作はtimeoutを返します。