IInputChannel.Receive Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Retourneert een bericht dat is ontvangen door het invoerkanaal, als er een beschikbaar is met een tijdsinterval dat expliciet of impliciet is gedefinieerd.
Overloads
| Name | Description |
|---|---|
| Receive() |
Retourneert het ontvangen bericht, indien beschikbaar. Als een bericht niet beschikbaar is, worden blokken voor een standaardinterval van tijd geblokkeerd. |
| Receive(TimeSpan) |
Retourneert het ontvangen bericht, indien beschikbaar. Als een bericht niet beschikbaar is, worden blokken voor een opgegeven tijdsinterval geblokkeerd. |
Opmerkingen
Gebruik de synchrone Receive methode wanneer het acceptabel is dat de huidige thread wordt geblokkeerd totdat het aanvraagbericht wordt ontvangen of het tijdsinterval overschrijdt dat is opgegeven door timeout. Gebruik de asynchrone BeginReceive methode wanneer u de verwerking van de toepassing nodig hebt om door te gaan zonder te wachten totdat de aanvraag is ontvangen.
De synchrone Receive bewerking is beschikbaar met of zonder een expliciete time-out.
Als een bericht niet beschikbaar is, wordt het geblokkeerd totdat het bericht beschikbaar is of totdat de time-out is overschreden.
Receive()
Retourneert het ontvangen bericht, indien beschikbaar. Als een bericht niet beschikbaar is, worden blokken voor een standaardinterval van tijd geblokkeerd.
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
Retouren
De Message ontvangen.
Voorbeelden
De volgende code illustreert hoe u deze methode implementeert:
public Message Receive()
{
return Receive(DefaultReceiveTimeout);
}
Opmerkingen
Gebruik de synchrone Receive methode wanneer het acceptabel is dat de huidige thread wordt geblokkeerd totdat het aanvraagbericht wordt ontvangen of het tijdsinterval overschrijdt dat is opgegeven door timeout. Gebruik de asynchrone BeginReceive methode wanneer u wilt dat de verwerking van de toepassing wordt voortgezet zonder te wachten totdat de aanvraag is ontvangen.
De synchrone Receive bewerking is beschikbaar met of zonder een expliciete time-out.
Als een bericht niet beschikbaar is, wordt het geblokkeerd totdat het bericht beschikbaar is of totdat de time-out is overschreden.
Receive kan meerdere keren of gelijktijdig worden aangeroepen. Slechts één Receive oproep kan worden voltooid voor elk ontvangen bericht.
Van toepassing op
Receive(TimeSpan)
Retourneert het ontvangen bericht, indien beschikbaar. Als een bericht niet beschikbaar is, worden blokken voor een opgegeven tijdsinterval geblokkeerd.
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
Parameters
- timeout
- TimeSpan
Hiermee TimeSpan geeft u op hoe lang de ontvangstbewerking moet worden voltooid voordat er een time-out optreedt en een TimeoutException.
Retouren
De Message ontvangen.
Uitzonderingen
De opgegeven timeout waarde wordt overschreden voordat de bewerking is voltooid.
De opgegeven time-out is kleiner dan nul.
Voorbeelden
De volgende code illustreert hoe u deze methode implementeert:
public Message Receive(TimeSpan timeout)
{
Message message;
while (true)
{
message = this.InnerChannel.Receive(timeout);
if (ProcessReceivedMessage(ref message))
{
break;
}
}
return message;
}
Opmerkingen
Gebruik de synchrone Receive methode wanneer het acceptabel is dat de huidige thread wordt geblokkeerd totdat het aanvraagbericht wordt ontvangen of het tijdsinterval overschrijdt dat is opgegeven door timeout. Gebruik de asynchrone BeginReceive methode wanneer u wilt dat de verwerking van de toepassing wordt voortgezet zonder te wachten totdat de aanvraag is ontvangen.
De synchrone Receive bewerking is beschikbaar met of zonder een expliciete time-out.
Als een bericht niet beschikbaar is, wordt het geblokkeerd totdat het bericht beschikbaar is of totdat de time-out is overschreden.
Receive kan meerdere keren of gelijktijdig worden aangeroepen. Slechts één Receive oproep kan worden voltooid voor elk ontvangen bericht.