Socket.ReceiveFromAsync Metod

Definition

Överlagringar

Name Description
ReceiveFromAsync(SocketAsyncEventArgs)

Börjar asynkront ta emot data från en angiven nätverksenhet.

ReceiveFromAsync(ArraySegment<Byte>, EndPoint)

Tar emot data och returnerar slutpunkten för den sändande värden.

ReceiveFromAsync(ArraySegment<Byte>, SocketFlags, EndPoint)

Tar emot data och returnerar slutpunkten för den sändande värden.

ReceiveFromAsync(Memory<Byte>, EndPoint, CancellationToken)

Tar emot data och returnerar slutpunkten för den sändande värden.

ReceiveFromAsync(Memory<Byte>, SocketFlags, EndPoint, CancellationToken)

Tar emot data och returnerar slutpunkten för den sändande värden.

ReceiveFromAsync(Memory<Byte>, SocketFlags, SocketAddress, CancellationToken)

Tar emot ett datagram till databufferten med den angivna SocketFlagsoch lagrar slutpunkten.

ReceiveFromAsync(SocketAsyncEventArgs)

Källa:
Socket.cs
Källa:
Socket.cs
Källa:
Socket.cs
Källa:
Socket.cs
Källa:
Socket.cs

Börjar asynkront ta emot data från en angiven nätverksenhet.

public:
 bool ReceiveFromAsync(System::Net::Sockets::SocketAsyncEventArgs ^ e);
public bool ReceiveFromAsync(System.Net.Sockets.SocketAsyncEventArgs e);
member this.ReceiveFromAsync : System.Net.Sockets.SocketAsyncEventArgs -> bool
Public Function ReceiveFromAsync (e As SocketAsyncEventArgs) As Boolean

Parametrar

e
SocketAsyncEventArgs

Objektet SocketAsyncEventArgs som ska användas för den här asynkrona socketåtgärden.

Returer

true om I/O-åtgärden väntar. Händelsen Completed på parametern e utlöses när åtgärden har slutförts.

false om I/O-åtgärden slutfördes synkront. I det här fallet Completed utlöses inte händelsen för parametern e och objektet e som skickas som en parameter kan undersökas omedelbart efter att metodanropet returneras för att hämta resultatet av åtgärden.

Undantag

Får RemoteEndPoint inte vara null.

En socketåtgärd pågick redan med hjälp av objektet SocketAsyncEventArgs som anges i parametern e .

Ett fel uppstod vid försök att komma åt socketen.

Kommentarer

Metoden ReceiveFromAsync används främst för att ta emot data på en anslutningslös socket. Socketens lokala adress måste vara känd.

Anroparen måste ange SocketAsyncEventArgs.RemoteEndPoint egenskapen till en EndPoint av samma typ som fjärrvärdens slutpunkt. Egenskapen uppdateras vid lyckad mottagning till den faktiska fjärrslutpunkten.

Egenskapen SocketAsyncEventArgs.SocketFlags på parametern e ger Window Sockets-tjänstprovidern ytterligare information om läsbegäran. Mer information om hur du använder den här parametern finns i System.Net.Sockets.SocketFlags.

Följande egenskaper och händelser i System.Net.Sockets.SocketAsyncEventArgs objektet krävs för att anropa den här metoden:

Anroparen kan ange SocketAsyncEventArgs.UserToken egenskapen till valfritt användartillståndsobjekt som önskas innan metoden anropas ReceiveFromAsync , så att informationen kan hämtas i motringningsmetoden. Om återanropet behöver mer information än ett enskilt objekt kan en liten klass skapas för att lagra den andra nödvändiga tillståndsinformationen som medlemmar.

För meddelandeorienterade sockets placeras ett inkommande meddelande i bufferten upp till buffertens totala storlek. Egenskaperna SocketAsyncEventArgs.Count och SocketAsyncEventArgs.Offset avgör var i bufferten data placeras och mängden data.

För byte stream-style sockets placeras inkommande data i bufferten tills bufferten är fylld, anslutningen stängs eller de internt buffrade data är uttömda. Egenskaperna SocketAsyncEventArgs.Count och SocketAsyncEventArgs.Offset avgör var i bufferten data placeras och mängden data.

Se även

Gäller för

ReceiveFromAsync(ArraySegment<Byte>, EndPoint)

Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs

Tar emot data och returnerar slutpunkten för den sändande värden.

public:
 System::Threading::Tasks::Task<System::Net::Sockets::SocketReceiveFromResult> ^ ReceiveFromAsync(ArraySegment<System::Byte> buffer, System::Net::EndPoint ^ remoteEndPoint);
public System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync(ArraySegment<byte> buffer, System.Net.EndPoint remoteEndPoint);
member this.ReceiveFromAsync : ArraySegment<byte> * System.Net.EndPoint -> System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As ArraySegment(Of Byte), remoteEndPoint As EndPoint) As Task(Of SocketReceiveFromResult)

Parametrar

buffer
ArraySegment<Byte>

Bufferten för mottagna data.

remoteEndPoint
EndPoint

En slutpunkt av samma typ som fjärrvärdens slutpunkt.

Returer

En asynkron uppgift som slutförs med ett SocketReceiveFromResult som innehåller antalet mottagna byte och slutpunkten för den sändande värden.

Undantag

remoteEndPoint är null.

Ett fel uppstod vid försök att komma åt socketen.

En anropare i samtalsstacken har inte de behörigheter som krävs.

Gäller för

ReceiveFromAsync(ArraySegment<Byte>, SocketFlags, EndPoint)

Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs

Tar emot data och returnerar slutpunkten för den sändande värden.

public:
 System::Threading::Tasks::Task<System::Net::Sockets::SocketReceiveFromResult> ^ ReceiveFromAsync(ArraySegment<System::Byte> buffer, System::Net::Sockets::SocketFlags socketFlags, System::Net::EndPoint ^ remoteEndPoint);
public System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync(ArraySegment<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEndPoint);
member this.ReceiveFromAsync : ArraySegment<byte> * System.Net.Sockets.SocketFlags * System.Net.EndPoint -> System.Threading.Tasks.Task<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As ArraySegment(Of Byte), socketFlags As SocketFlags, remoteEndPoint As EndPoint) As Task(Of SocketReceiveFromResult)

Parametrar

buffer
ArraySegment<Byte>

Bufferten för mottagna data.

socketFlags
SocketFlags

En bitvis kombination av SocketFlags-värden som ska användas när du tar emot data.

remoteEndPoint
EndPoint

En slutpunkt av samma typ som fjärrvärdens slutpunkt.

Returer

En asynkron uppgift som slutförs med ett SocketReceiveFromResult som innehåller antalet mottagna byte och slutpunkten för den sändande värden.

Undantag

remoteEndPoint är null.

Ett fel uppstod vid försök att komma åt socketen.

En anropare i samtalsstacken har inte de behörigheter som krävs.

Gäller för

ReceiveFromAsync(Memory<Byte>, EndPoint, CancellationToken)

Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs

Tar emot data och returnerar slutpunkten för den sändande värden.

public System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync(Memory<byte> buffer, System.Net.EndPoint remoteEndPoint, System.Threading.CancellationToken cancellationToken = default);
member this.ReceiveFromAsync : Memory<byte> * System.Net.EndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As Memory(Of Byte), remoteEndPoint As EndPoint, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of SocketReceiveFromResult)

Parametrar

buffer
Memory<Byte>

Bufferten för mottagna data.

remoteEndPoint
EndPoint

En slutpunkt av samma typ som fjärrvärdens slutpunkt.

cancellationToken
CancellationToken

En annulleringstoken som kan användas för att signalera den asynkrona åtgärden bör avbrytas.

Returer

En asynkron uppgift som slutförs med ett SocketReceiveFromResult som innehåller antalet mottagna byte och slutpunkten för den sändande värden.

Undantag

remoteEndPoint är null.

Ett fel uppstod vid försök att komma åt socketen.

En anropare i samtalsstacken har inte de behörigheter som krävs.

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Gäller för

ReceiveFromAsync(Memory<Byte>, SocketFlags, EndPoint, CancellationToken)

Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs

Tar emot data och returnerar slutpunkten för den sändande värden.

public System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult> ReceiveFromAsync(Memory<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEndPoint, System.Threading.CancellationToken cancellationToken = default);
member this.ReceiveFromAsync : Memory<byte> * System.Net.Sockets.SocketFlags * System.Net.EndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<System.Net.Sockets.SocketReceiveFromResult>
Public Function ReceiveFromAsync (buffer As Memory(Of Byte), socketFlags As SocketFlags, remoteEndPoint As EndPoint, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of SocketReceiveFromResult)

Parametrar

buffer
Memory<Byte>

Bufferten för mottagna data.

socketFlags
SocketFlags

En bitvis kombination av SocketFlags-värden som ska användas när du tar emot data.

remoteEndPoint
EndPoint

En slutpunkt av samma typ som fjärrvärdens slutpunkt.

cancellationToken
CancellationToken

En annulleringstoken som kan användas för att signalera den asynkrona åtgärden bör avbrytas.

Returer

En asynkron uppgift som slutförs med ett SocketReceiveFromResult som innehåller antalet mottagna byte och slutpunkten för den sändande värden.

Undantag

remoteEndPoint är null.

Ett fel uppstod vid försök att komma åt socketen.

En anropare i samtalsstacken har inte de behörigheter som krävs.

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Gäller för

ReceiveFromAsync(Memory<Byte>, SocketFlags, SocketAddress, CancellationToken)

Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs
Källa:
Socket.Tasks.cs

Tar emot ett datagram till databufferten med den angivna SocketFlagsoch lagrar slutpunkten.

public System.Threading.Tasks.ValueTask<int> ReceiveFromAsync(Memory<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.SocketAddress receivedAddress, System.Threading.CancellationToken cancellationToken = default);
member this.ReceiveFromAsync : Memory<byte> * System.Net.Sockets.SocketFlags * System.Net.SocketAddress * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function ReceiveFromAsync (buffer As Memory(Of Byte), socketFlags As SocketFlags, receivedAddress As SocketAddress, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)

Parametrar

buffer
Memory<Byte>

Bufferten för mottagna data.

socketFlags
SocketFlags

En bitvis kombination av de SocketFlags värden som ska användas när du tar emot data.

receivedAddress
SocketAddress

En SocketAddress instans som uppdateras med värdet för fjärr peer när den här metoden returneras.

cancellationToken
CancellationToken

En annulleringstoken som kan användas för att signalera den asynkrona åtgärden bör avbrytas.

Returer

En asynkron uppgift som slutförs med ett SocketReceiveFromResult som innehåller antalet mottagna byte och slutpunkten för den sändande värden.

Undantag

receivedAddress är null.

Ett fel uppstod vid försök att komma åt socketen.

Annulleringstoken avbröts. Det här undantaget lagras i den returnerade aktiviteten.

Gäller för