UdpClient.SendAsync Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Odesílá datagram UDP asynchronně vzdálenému hostiteli.
Přetížení
SendAsync(Byte[], Int32) |
Odešle datagram UDP asynchronně vzdálenému hostiteli. |
SendAsync(ReadOnlyMemory<Byte>, CancellationToken) |
Odešle datagram UDP asynchronně vzdálenému hostiteli. |
SendAsync(Byte[], Int32, IPEndPoint) |
Odešle datagram UDP asynchronně vzdálenému hostiteli. |
SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken) |
Odešle datagram UDP asynchronně vzdálenému hostiteli. |
SendAsync(Byte[], Int32, String, Int32) |
Odešle datagram UDP asynchronně vzdálenému hostiteli. |
SendAsync(ReadOnlyMemory<Byte>, String, Int32, CancellationToken) |
Odešle datagram UDP asynchronně vzdálenému hostiteli. |
SendAsync(Byte[], Int32)
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
Odešle datagram UDP asynchronně vzdálenému hostiteli.
public:
System::Threading::Tasks::Task<int> ^ SendAsync(cli::array <System::Byte> ^ datagram, int bytes);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes);
member this.SendAsync : byte[] * int -> System.Threading.Tasks.Task<int>
Public Function SendAsync (datagram As Byte(), bytes As Integer) As Task(Of Integer)
Parametry
- datagram
- Byte[]
Pole typu Byte určující datagram UDP, který chcete odeslat, reprezentovaný jako pole bajtů.
- bytes
- Int32
Počet bajtů v datagramu.
Návraty
Vrací objekt Task<TResult>.
Výjimky
dgram
je null
.
Služba UdpClient již vytvořila výchozího vzdáleného hostitele.
Je UdpClient zavřený.
Při přístupu k soketu došlo k chybě.
Poznámky
Toto přetížení odesílá datagramy vzdálenému hostiteli vytvořenému Connect v metodě. Pokud nevoláte Connect před voláním tohoto přetížení, metoda vyvolá SocketException. Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Po získání tohoto kódu najdete podrobný popis chyby v dokumentaci k rozhraní API windows Sockets verze 2 .
Pokud chcete odesílat datagramy jinému vzdálenému hostiteli, musíte volat metodu Connect a zadat požadovaného vzdáleného hostitele. K odeslání datagramů na adresu všesměrového vysílání použijte některou z přetížení metody SendAsync .
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Send(Byte[], Int32).
Platí pro
SendAsync(ReadOnlyMemory<Byte>, CancellationToken)
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
Odešle datagram UDP asynchronně vzdálenému hostiteli.
public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> datagram, System.Threading.CancellationToken cancellationToken = default);
member this.SendAsync : ReadOnlyMemory<byte> * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function SendAsync (datagram As ReadOnlyMemory(Of Byte), Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parametry
- datagram
- ReadOnlyMemory<Byte>
Typ ReadOnlyMemory<T>Byte určující datagram UDP, který chcete odeslat.
- cancellationToken
- CancellationToken
Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je žádné.
Návraty
A ValueTask<TResult> , který představuje asynchronní operaci odeslání. Hodnota vlastnosti Result obsahuje počet odeslaných bajtů.
Výjimky
Je UdpClient zavřený.
Při přístupu k soketu došlo k chybě.
Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.
Platí pro
SendAsync(Byte[], Int32, IPEndPoint)
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
Odešle datagram UDP asynchronně vzdálenému hostiteli.
public:
System::Threading::Tasks::Task<int> ^ SendAsync(cli::array <System::Byte> ^ datagram, int bytes, System::Net::IPEndPoint ^ endPoint);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, System.Net.IPEndPoint? endPoint);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, System.Net.IPEndPoint endPoint);
member this.SendAsync : byte[] * int * System.Net.IPEndPoint -> System.Threading.Tasks.Task<int>
Public Function SendAsync (datagram As Byte(), bytes As Integer, endPoint As IPEndPoint) As Task(Of Integer)
Parametry
- datagram
- Byte[]
Pole typu Byte určující datagram UDP, který chcete odeslat, reprezentovaný jako pole bajtů.
- bytes
- Int32
Počet bajtů v datagramu.
- endPoint
- IPEndPoint
Představuje IPEndPoint hostitele a port, na který se má datagram odeslat.
Návraty
Vrací objekt Task<TResult>.
Výjimky
dgram
je null
.
UdpClient již vytvořil výchozího vzdáleného hostitele.
UdpClient je zavřený.
Při přístupu k soketu došlo k chybě.
Poznámky
Tato metoda odesílá datagramy do zadaného koncového bodu. Před voláním tohoto přetížení musíte nejprve vytvořit IPEndPoint ip adresu a číslo portu vzdáleného hostitele, kterému budou datagramy doručovány. Zadáním vlastnosti IPEndPointmůžete odesílat datagramy na výchozí adresu všesměrového vysílání 255.255.255.255.SocketOptionName.BroadcastAddress Po vytvoření ho IPEndPointpředejte této metodě jako endPoint
parametr.
Pokud chcete odesílat datagramy na jakoukoli jinou adresu všesměrového vysílání, použijte metodu Client k získání podkladové Socketadresy a nastavte možnost soketu na SocketOptionName.Broadcast. Můžete se také vrátit k použití Socket třídy.
Upozornění
Pokud jste již vytvořili vzdáleného endPoint
hostitele pomocí Connect metody, nezadáte parametr této metody. Pokud to uděláte, tato metoda vyvolá SocketException. Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Po získání tohoto kódu najdete podrobný popis chyby v dokumentaci k rozhraní API windows Sockets verze 2 .
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Send(Byte[], Int32, IPEndPoint).
Platí pro
SendAsync(ReadOnlyMemory<Byte>, IPEndPoint, CancellationToken)
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
Odešle datagram UDP asynchronně vzdálenému hostiteli.
public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> datagram, System.Net.IPEndPoint? endPoint, System.Threading.CancellationToken cancellationToken = default);
member this.SendAsync : ReadOnlyMemory<byte> * System.Net.IPEndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function SendAsync (datagram As ReadOnlyMemory(Of Byte), endPoint As IPEndPoint, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parametry
- datagram
- ReadOnlyMemory<Byte>
Typ ReadOnlyMemory<T>Byte určující datagram UDP, který chcete odeslat.
- endPoint
- IPEndPoint
Představuje IPEndPoint hostitele a port, na který se má datagram odeslat.
- cancellationToken
- CancellationToken
Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je žádné.
Návraty
A ValueTask<TResult> , který představuje asynchronní operaci odeslání. Hodnota vlastnosti Result obsahuje počet odeslaných bajtů.
Výjimky
UdpClient již vytvořil výchozího vzdáleného hostitele a endPoint
není null
.
Je UdpClient zavřený.
Při přístupu k soketu došlo k chybě.
Token zrušení byl zrušen. Tato výjimka je uložena ve vrácené úloze.
Platí pro
SendAsync(Byte[], Int32, String, Int32)
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
Odesílá datagram UDP asynchronně vzdálenému hostiteli.
public:
System::Threading::Tasks::Task<int> ^ SendAsync(cli::array <System::Byte> ^ datagram, int bytes, System::String ^ hostname, int port);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, string? hostname, int port);
public System.Threading.Tasks.Task<int> SendAsync (byte[] datagram, int bytes, string hostname, int port);
member this.SendAsync : byte[] * int * string * int -> System.Threading.Tasks.Task<int>
Public Function SendAsync (datagram As Byte(), bytes As Integer, hostname As String, port As Integer) As Task(Of Integer)
Parametry
- datagram
- Byte[]
Pole typu Byte určující datagram UDP, který chcete odeslat, reprezentovaný jako pole bajtů.
- bytes
- Int32
Počet bajtů v datagramu.
- hostname
- String
Název vzdáleného hostitele, kterému chcete odeslat datagram.
- port
- Int32
Číslo vzdáleného portu, se kterým chcete komunikovat.
Návraty
Vrací objekt Task<TResult>.
Výjimky
dgram
je null
.
Služba UdpClient již vytvořila výchozího vzdáleného hostitele.
Je UdpClient zavřený.
Při přístupu k soketu došlo k chybě.
Poznámky
Tato metoda odesílá datagramy na hodnoty zadané hostname
parametry a port
. Datagramy můžete odeslat na výchozí adresu všesměrového vysílání zadáním hodnoty parametru hostname
255.255.255.255.
Pokud chcete odesílat datagramy na jakoukoli jinou adresu všesměrového vysílání, použijte metodu Client k získání podkladové Socketadresy a nastavte možnost soketu na SocketOptionName.Broadcast. Můžete se také vrátit k použití Socket třídy.
Upozornění
Pokud jste již vytvořili vzdáleného hostitele pomocí metody, nezadáte pro tuto metodu Connect název hostitele ani číslo portu. Pokud to uděláte, tato metoda vyvolá SocketException. Pokud se zobrazí SocketException, použijte SocketException.ErrorCode k získání konkrétního kódu chyby. Po získání tohoto kódu najdete podrobný popis chyby v dokumentaci k rozhraní API windows Sockets verze 2 .
Tato metoda ukládá do úlohy, která vrací všechny výjimky nesouvisejí s používáním, které může vyvolat synchronní protějšek metody. Pokud je ve vrácené úloze uložena výjimka, bude tato výjimka vyvolána při čekání na úkol. Výjimky použití, například ArgumentException, jsou stále vyvolány synchronně. Informace o uložených výjimkách najdete v tématu Výjimky vyvolané nástrojem Send(Byte[], Int32, String, Int32).
Platí pro
SendAsync(ReadOnlyMemory<Byte>, String, Int32, CancellationToken)
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
- Zdroj:
- UDPClient.cs
Odesílá datagram UDP asynchronně vzdálenému hostiteli.
public System.Threading.Tasks.ValueTask<int> SendAsync (ReadOnlyMemory<byte> datagram, string? hostname, int port, System.Threading.CancellationToken cancellationToken = default);
member this.SendAsync : ReadOnlyMemory<byte> * string * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<int>
Public Function SendAsync (datagram As ReadOnlyMemory(Of Byte), hostname As String, port As Integer, Optional cancellationToken As CancellationToken = Nothing) As ValueTask(Of Integer)
Parametry
- datagram
- ReadOnlyMemory<Byte>
Typ ReadOnlyMemory<T>Byte určující datagram UDP, který chcete odeslat.
- hostname
- String
Název vzdáleného hostitele, na kterého chcete datagram odeslat.
- port
- Int32
Číslo vzdáleného portu, se kterým chcete komunikovat.
- cancellationToken
- CancellationToken
Token, který se má monitorovat pro žádosti o zrušení. Výchozí hodnota je žádné.
Návraty
A ValueTask<TResult> , který představuje asynchronní operaci odeslání. Hodnota vlastnosti Result obsahuje počet odeslaných bajtů.
Výjimky
Služba UdpClient již vytvořila výchozího vzdáleného hostitele.
Je UdpClient zavřený.
Při přístupu k soketu došlo k chybě.
Token zrušení byl zrušen. Tato výjimka se uloží do vrácené úlohy.