IReplyChannel.TryReceiveRequest(TimeSpan, RequestContext) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt einen Wert zurück, der angibt, ob eine Anforderung vor einem angegebenen Zeitintervall empfangen wird.
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
Parameter
- timeout
- TimeSpan
Dies TimeSpan gibt an, wie lange der Empfang eines Anforderungsvorgangs abgeschlossen werden muss, bevor ein Timeout ausgeführt und zurückgegeben wird false.
- context
- RequestContext
Der RequestContext Empfangene.
Gibt zurück
true wenn eine Anforderungsnachricht vor dem angegebenen Zeitintervall empfangen wird; andernfalls false.
Beispiele
Der folgende Code veranschaulicht die Implementierung dieser Methode:
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;
}
Hinweise
Wird verwendet TryReceiveRequest(TimeSpan, RequestContext) , wenn der aktuelle Thread blockiert werden kann, während er wartet, bis eine Anforderungsnachricht in der Warteschlange eingetroffen ist. Der Thread wird bis zum angegebenen timeoutThread blockiert. Wenn Die Anwendungsverarbeitung ohne Warten fortgesetzt werden muss, verwenden Sie die asynchrone BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object) Methode.
Hinweise für Ausführende
Der Vorgang gibt zurück false , wenn der angegebene timeout Wert überschritten wird.