Compartir vía


ChannelDispatcher.ReceiveSynchronously Propiedad

Definición

Obtiene o establece un valor que especifica si el distribuidor utiliza llamadas sincrónicas para leer los mensajes de los canales.

public:
 property bool ReceiveSynchronously { bool get(); void set(bool value); };
public bool ReceiveSynchronously { get; set; }
member this.ReceiveSynchronously : bool with get, set
Public Property ReceiveSynchronously As Boolean

Valor de propiedad

true si el distribuidor utiliza métodos sincrónicos para leer los mensajes de los canales; de lo contrario, false. De manera predeterminada, es false.

Excepciones

El objeto de comunicación está en un estado de Opening o Opened.

El objeto de comunicación está en un estado de Closing o Closed.

El objeto de comunicación está en un estado de Faulted.

Ejemplos

Uri baseAddress = new Uri("http://localhost:8001/Simple");
ServiceHost serviceHost = new ServiceHost(typeof(CalculatorService), baseAddress);

serviceHost.AddServiceEndpoint(
    typeof(ICalculator),
    new WSHttpBinding(),
    "CalculatorServiceObject");

serviceHost.Open();

IChannelListener icl = serviceHost.ChannelDispatchers[0].Listener;
ChannelDispatcher dispatcher = new ChannelDispatcher(icl);
bool receiveSynchronously = dispatcher.ReceiveSynchronously;
Dim baseAddress As New Uri("http://localhost:8001/Simple")
Dim serviceHost As New ServiceHost(GetType(CalculatorService), baseAddress)

serviceHost.AddServiceEndpoint(GetType(ICalculator), New WSHttpBinding(), "CalculatorServiceObject")

serviceHost.Open()

Dim icl As IChannelListener = serviceHost.ChannelDispatchers(0).Listener
Dim dispatcher As New ChannelDispatcher(icl)
Dim receiveSynchronously As Boolean = dispatcher.ReceiveSynchronously

Comentarios

Si un enlace implementa IBindingRuntimePreferences, Windows Communication Foundation (WCF) asigna el valor de la ReceiveSynchronously propiedad a esta propiedad. Por lo tanto, si este valor es true, se invalida el valor predeterminado false de ReceiveSynchronously.

Esta propiedad sólo se puede establecer cuando la instancia del ChannelDispatcher está en el estado de Created, puesto que éste es el único estado que es mutable y no eliminado.

Se aplica a