Język

UdpAnySourceMulticastClient.BeginSendTo Metoda

Definicja

Uwaga

This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.

Rozpoczyna operację wysyłania pakietu emisji pojedynczej do określonego miejsca docelowego.

public:
 IAsyncResult ^ BeginSendTo(cli::array <System::Byte> ^ buffer, int offset, int count, System::Net::IPEndPoint ^ remoteEndPoint, AsyncCallback ^ callback, System::Object ^ state);
[System.Obsolete("This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.", true)]
public IAsyncResult BeginSendTo(byte[] buffer, int offset, int count, System.Net.IPEndPoint remoteEndPoint, AsyncCallback callback, object state);
[<System.Obsolete("This API supports the .NET Framework infrastructure and is not intended to be used directly from your code.", true)>]
member this.BeginSendTo : byte[] * int * int * System.Net.IPEndPoint * AsyncCallback * obj -> IAsyncResult
Public Function BeginSendTo (buffer As Byte(), offset As Integer, count As Integer, remoteEndPoint As IPEndPoint, callback As AsyncCallback, state As Object) As IAsyncResult

Parametry

buffer
Byte[]

Bufor zawierający dane do wysłania.

offset
Int32

Przesunięcie( w bajtach buffer ) od początku, aby odczytać dane do wysłania.

count
Int32

Liczba bajtów do wysłania z obiektu buffer.

remoteEndPoint
IPEndPoint

Zdalny punkt końcowy, do którego ma zostać wysłany pakiet.

callback
AsyncCallback

Metoda wywołania zwrotnego, która ma być wywoływana po zakończeniu operacji.

state
Object

Opcjonalne informacje o stanie, które mają być przekazywane do callback metody dla tej operacji.

Zwraca

Element IAsyncResult odwołujący się do tej operacji.

Atrybuty

Wyjątki

buffer jest odwołaniem o wartości null (Nic w Visual Basic).

offset jest mniejsza niż 0

— lub —

offset wartość jest większa niż długość obiektu buffer.

— lub —

count jest mniejsza niż 0

— lub —

offset plus liczba jest większa niż długość buffer.

Grupa multiemisji nie została jeszcze dołączona.

Wystąpił błąd podczas próby uzyskania dostępu do gniazda.

Uwagi

Metoda BeginSendTo rozpoczyna operację wysyłania pakietu UDP do przyłączonej grupy multiemisji.

Klient musi ukończyć sprzężenie do grupy multiemisji. Adres docelowy określony w parametrze remoteEndPoint musi już wysłać pakiet multiemisji do tego odbiornika. Niektóre protokoły używają tych informacji do przekazywania kontroli przepływu, jakości statystyk usług lub komunikatów odzyskiwania.

Metoda określona w parametrze jest wywoływana po odebraniu callback pakietu.

Transmisja jest dozwolona tylko wtedy, gdy adres określony w parametrze remoteEndPoint wysłał już pakiet multiemisji do tego odbiornika. Jeśli klient nie ma dozwolonego dostępu, element SocketException jest zgłaszany za pomocą polecenia AccessDenied.

Jeśli port docelowy określony w parametrze remoteEndPoint jest mniejszy niż 1024, parametr SocketException jest zgłaszany za pomocą polecenia AccessDenied.

Istnieje możliwość wystąpienia błędu gniazda, jeśli operacja odbierania nie powiedzie się synchronicznie, chociaż jest to rzadkością w przypadku protokołu UDP. Jeśli wystąpi awaria gniazda, SocketException zostanie zgłoszony element . Odebrany błąd jest określony jako element członkowski SocketError wyliczenia.

Dotyczy