IInputChannel.BeginReceive メソッド

定義

非同期受信操作を開始します。

オーバーロード

名前 説明
BeginReceive(AsyncCallback, Object)

状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

BeginReceive(TimeSpan, AsyncCallback, Object)

指定したタイムアウトと状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

注釈

要求の受信を待たずにアプリケーション処理を続行する場合は、非同期 BeginReceive メソッドを使用します。 同期 Receive メソッドは、要求メッセージを受信するか、 timeout で指定された時間間隔を超えるまで、現在のスレッドをブロックできる場合に使用します。 非同期操作は、明示的なタイムアウトの有無にかかわらず使用できます。

BeginReceive(AsyncCallback, Object)

ソース:
IInputChannel.cs
ソース:
IInputChannel.cs
ソース:
IInputChannel.cs

状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

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

パラメーター

callback
AsyncCallback

非同期操作の完了の通知を受け取る AsyncCallback デリゲート。

state
Object

非同期操作に関連付けられた状態情報を含むオブジェクト。アプリケーションによって指定されます。

返品

非同期メッセージ受信を参照する IAsyncResult

次のコードは、このメソッドを実装する方法を示しています。

public IAsyncResult BeginReceive(AsyncCallback callback, object state)
{
    return BeginReceive(DefaultReceiveTimeout, callback, state);
}

注釈

要求の受信を待たずにアプリケーション処理を続行する場合は、非同期 BeginReceive メソッドを使用します。 同期 Receive メソッドは、要求メッセージを受信するか、 timeout で指定された時間間隔を超えるまで、現在のスレッドをブロックできる場合に使用します。 非同期操作は、明示的なタイムアウトの有無にかかわらず使用できます。

このメソッドは、コールバックを介して、操作のイベント ハンドラーの ID の通知を受け取ります。 操作は、チャネルでメッセージが使用可能になるまで完了しません。

適用対象

BeginReceive(TimeSpan, AsyncCallback, Object)

ソース:
IInputChannel.cs
ソース:
IInputChannel.cs
ソース:
IInputChannel.cs

指定したタイムアウトと状態オブジェクトが関連付けられているメッセージを受信する非同期操作を開始します。

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

パラメーター

timeout
TimeSpan

メッセージが使用可能になるまでの待機時間を指定する TimeSpan

callback
AsyncCallback

非同期操作の完了の通知を受け取る AsyncCallback デリゲート。

state
Object

非同期操作に関連付けられた状態情報を含むオブジェクト。アプリケーションによって指定されます。

返品

非同期受信操作を参照する IAsyncResult

例外

指定した timeout を超えると、操作が完了します。

指定されたタイムアウトが 0 未満です。

次のコードは、このメソッドを実装する方法を示しています。

public IAsyncResult BeginReceive(TimeSpan timeout, AsyncCallback callback, object state)
{
    ReceiveAsyncResult<TChannel> result = new ReceiveAsyncResult<TChannel>(this, timeout, callback, state);
    result.Begin();
    return result;
}

注釈

要求の受信を待たずにアプリケーション処理を続行する場合は、非同期 BeginReceive メソッドを使用します。 同期 Receive メソッドは、要求メッセージを受信するか、 timeout で指定された時間間隔を超えるまで、現在のスレッドをブロックできる場合に使用します。 非同期操作は、明示的なタイムアウトの有無にかかわらず使用できます。

チャネルでメッセージが使用可能になるか、タイムアウトが発生するまで、操作は完了しません。

注意 (実装者)

指定したTimeoutExceptionが完了する前に超過した場合、操作はtimeoutをスローします。

適用対象