IReplyChannel.TryReceiveRequest(TimeSpan, RequestContext) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した期間が経過する前に要求を受信するかどうかを示す値を返します。
public:
bool TryReceiveRequest(TimeSpan timeout, [Runtime::InteropServices::Out] System::ServiceModel::Channels::RequestContext ^ % context);
public bool TryReceiveRequest (TimeSpan timeout, out System.ServiceModel.Channels.RequestContext context);
abstract member TryReceiveRequest : TimeSpan * RequestContext -> bool
Public Function TryReceiveRequest (timeout As TimeSpan, ByRef context As RequestContext) As Boolean
パラメーター
- context
- RequestContext
受信した RequestContext。
戻り値
指定した期間が経過する前に要求メッセージを受信する場合は true
、それ以外の場合は false
。
例
このメソッドを実装する方法を次のコードに示します。
public bool TryReceiveRequest(TimeSpan timeout, out RequestContext requestContext)
{
bool result;
while (true)
{
result = this.InnerChannel.TryReceiveRequest(timeout, out requestContext);
if (!result || ProcessRequestContext(ref requestContext))
{
break;
}
}
return result;
}
注釈
要求メッセージがキューに到達するのを待機している間に、現在のスレッドがブロックされてもかまわない場合は、TryReceiveRequest(TimeSpan, RequestContext) を使用します。 スレッドは、指定した timeout
までブロックされます。 待機せずにアプリケーションの処理を継続する必要がある場合は、非同期の BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) メソッドを使用します。
注意 (実装者)
指定した false
が経過した場合、操作は timeout
を返します。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET