IReplyChannel.TryReceiveRequest(TimeSpan, RequestContext) Método
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve un valor que indica si una solicitud se recibe antes de que transcurra un intervalo de tiempo especificado.
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
- timeout
- TimeSpan
TimeSpan que especifica cuánto tiempo tiene una operación de solicitud antes de expirar y devolver false
.
- context
- RequestContext
RequestContext recibido.
true
si se recibe un mensaje de solicitud antes de que transcurra un intervalo de tiempo especificado; de lo contrario false
.
El código siguiente muestra cómo implementar este método:
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;
}
Utilice TryReceiveRequest(TimeSpan, RequestContext) cuando sea aceptable bloquear el subproceso actual mientras se espera a que llegue un mensaje de solicitud a la cola. El subproceso está bloqueado hasta el timeout
especificado. Si es necesario que la aplicación siga realizando sus procesos sin esperar, hay que utilizar el método asincrónico BeginTryReceiveRequest(TimeSpan, AsyncCallback, Object).
La operación devuelve false
si se supera el timeout
especificado.
Producto | Versiones |
---|---|
.NET Framework | 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1 |
Comentarios de .NET
.NET es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios: