Aracılığıyla paylaş


IInputChannel.Receive Yöntem

Tanım

Açıkça veya örtük olarak tanımlanmış bir zaman aralığıyla varsa, giriş kanalı tarafından alınan bir iletiyi döndürür.

Aşırı Yüklemeler

Receive()

Varsa alınan iletiyi döndürür. bir ileti kullanılamıyorsa, varsayılan bir zaman aralığı için engeller.

Receive(TimeSpan)

Varsa alınan iletiyi döndürür. bir ileti kullanılamıyorsa, belirli bir zaman aralığı için engeller.

Açıklamalar

Geçerli iş parçacığının istek iletisini alana veya tarafından timeoutbelirtilen zaman aralığını aşana kadar engellenmesi kabul edilebilir olduğunda zaman uyumlu Receive yöntemini kullanın. Uygulama işlemenin isteğin BeginReceive alınmasını beklemeden devam etmesi gerektiğinde zaman uyumsuz yöntemini kullanın.

Zaman uyumlu Receive işlem, açık bir zaman aşımıyla veya zaman aşımı olmadan kullanılabilir.

Bir ileti kullanılamıyorsa, ileti kullanılabilir olana kadar veya zaman aşımı aşılana kadar engeller.

Receive()

Kaynak:
IInputChannel.cs
Kaynak:
IInputChannel.cs
Kaynak:
IInputChannel.cs

Varsa alınan iletiyi döndürür. bir ileti kullanılamıyorsa, varsayılan bir zaman aralığı için engeller.

public:
 System::ServiceModel::Channels::Message ^ Receive();
public System.ServiceModel.Channels.Message Receive ();
abstract member Receive : unit -> System.ServiceModel.Channels.Message
Public Function Receive () As Message

Döndürülenler

Alınan Message .

Örnekler

Aşağıdaki kodda bu yöntemin nasıl uygulandığı gösterilmektedir:

public Message Receive()
{
    return Receive(DefaultReceiveTimeout);
}

Açıklamalar

Geçerli iş parçacığının istek iletisini alana veya tarafından timeoutbelirtilen zaman aralığını aşana kadar engellenmesi kabul edilebilir olduğunda zaman uyumlu Receive yöntemini kullanın. Uygulama işlemenin isteğin BeginReceive alınmasını beklemeden devam etmesi için zaman uyumsuz yöntemi kullanın.

Zaman uyumlu Receive işlem, açık bir zaman aşımıyla veya zaman aşımı olmadan kullanılabilir.

Bir ileti kullanılamıyorsa, ileti kullanılabilir olana kadar veya zaman aşımı aşılana kadar engeller.

Receive birden çok kez veya eşzamanlı olarak çağrılabilir. Alınan her ileti için yalnızca bir Receive çağrı tamamlanabilir.

Şunlara uygulanır

Receive(TimeSpan)

Kaynak:
IInputChannel.cs
Kaynak:
IInputChannel.cs
Kaynak:
IInputChannel.cs

Varsa alınan iletiyi döndürür. bir ileti kullanılamıyorsa, belirli bir zaman aralığı için engeller.

public:
 System::ServiceModel::Channels::Message ^ Receive(TimeSpan timeout);
public System.ServiceModel.Channels.Message Receive (TimeSpan timeout);
abstract member Receive : TimeSpan -> System.ServiceModel.Channels.Message
Public Function Receive (timeout As TimeSpan) As Message

Parametreler

timeout
TimeSpan

, TimeSpan zaman aşımına uğramadan ve bir TimeoutExceptionoluşturmadan önce alma işleminin ne kadar süreyle tamamlanması gerekdiğini belirtir.

Döndürülenler

Alınan Message .

Özel durumlar

timeout belirtilen işlem tamamlanmadan önce aşıldı.

Belirtilen zaman aşımı sıfırdan küçük.

Örnekler

Aşağıdaki kodda bu yöntemin nasıl uygulandığı gösterilmektedir:

public Message Receive(TimeSpan timeout)
{
    Message message;
    while (true)
    {
        message = this.InnerChannel.Receive(timeout);
        if (ProcessReceivedMessage(ref message))
        {
            break;
        }
    }

    return message;
}

Açıklamalar

Geçerli iş parçacığının istek iletisini alana veya tarafından timeoutbelirtilen zaman aralığını aşana kadar engellenmesi kabul edilebilir olduğunda zaman uyumlu Receive yöntemini kullanın. Uygulama işlemenin isteğin BeginReceive alınmasını beklemeden devam etmesi için zaman uyumsuz yöntemi kullanın.

Zaman uyumlu Receive işlem, açık bir zaman aşımıyla veya zaman aşımı olmadan kullanılabilir.

Bir ileti kullanılamıyorsa, ileti kullanılabilir olana kadar veya zaman aşımı aşılana kadar engeller.

Receive birden çok kez veya eşzamanlı olarak çağrılabilir. Alınan her ileti için yalnızca bir Receive çağrı tamamlanabilir.

Şunlara uygulanır