UdpClient.BeginSend Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Uzak bir konağa zaman uyumsuz olarak bir veri birimi gönderir.
Aşırı Yüklemeler
BeginSend(Byte[], Int32, String, Int32, AsyncCallback, Object) |
Bir hedefe zaman uyumsuz olarak bir veri birimi gönderir. Hedef, ana bilgisayar adı ve bağlantı noktası numarası ile belirtilir. |
BeginSend(Byte[], Int32, IPEndPoint, AsyncCallback, Object) |
Bir hedefe zaman uyumsuz olarak bir veri birimi gönderir. Hedef, tarafından EndPointbelirtilir. |
BeginSend(Byte[], Int32, AsyncCallback, Object) |
Uzak bir konağa zaman uyumsuz olarak bir veri birimi gönderir. Hedef daha önce çağrısıyla Connectbelirtildi. |
BeginSend(Byte[], Int32, String, Int32, AsyncCallback, Object)
- Kaynak:
- UDPClient.cs
- Kaynak:
- UDPClient.cs
- Kaynak:
- UDPClient.cs
Bir hedefe zaman uyumsuz olarak bir veri birimi gönderir. Hedef, ana bilgisayar adı ve bağlantı noktası numarası ile belirtilir.
public:
IAsyncResult ^ BeginSend(cli::array <System::Byte> ^ datagram, int bytes, System::String ^ hostname, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginSend (byte[] datagram, int bytes, string? hostname, int port, AsyncCallback? requestCallback, object? state);
public IAsyncResult BeginSend (byte[] datagram, int bytes, string hostname, int port, AsyncCallback requestCallback, object state);
member this.BeginSend : byte[] * int * string * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (datagram As Byte(), bytes As Integer, hostname As String, port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult
Parametreler
- bytes
- Int32
Gönderilecek bayt sayısı.
- hostname
- String
Hedef konak.
- port
- Int32
Hedef bağlantı noktası numarası.
- requestCallback
- AsyncCallback
AsyncCallback İşlem tamamlandığında çağırma yöntemine başvuran bir temsilci.
- state
- Object
Gönderme işlemi hakkında bilgi içeren kullanıcı tanımlı bir nesne. İşlem tamamlandığında bu nesne temsilciye requestCallback
geçirilir.
Döndürülenler
IAsyncResult Zaman uyumsuz göndermeye başvuran bir nesne.
Örnekler
Aşağıdaki kod örneği, zaman uyumsuz olarak bir sunucu isteği göndermek için kullanır BeginSend .
public:
static bool isMessageSent;
static void SendCallback(IAsyncResult^ asyncResult)
{
UdpClient^ udpClient = (UdpClient^)asyncResult->AsyncState;
Console::WriteLine("number of bytes sent: {0}",
udpClient->EndSend(asyncResult));
isMessageSent = true;
}
public static bool messageSent = false;
public static void SendCallback(IAsyncResult ar)
{
UdpClient u = (UdpClient)ar.AsyncState;
Console.WriteLine($"number of bytes sent: {u.EndSend(ar)}");
messageSent = true;
}
public:
static void SendMessage3(String^ server, String^ message)
{
// create the udp socket
UdpClient^ udpClient = gcnew UdpClient();
array<Byte>^ sendBytes = Encoding::ASCII->GetBytes(message);
// send the message
// the destination is defined by the server name and port
udpClient->BeginSend(sendBytes, sendBytes->Length, server, listenPort,
gcnew AsyncCallback(SendCallback), udpClient);
// Do some work while we wait for the send to complete. For
// this example, we'll just sleep
while (!isMessageSent)
{
Thread::Sleep(100);
}
}
static void SendMessage3(string server, string message)
{
// create the udp socket
UdpClient u = new UdpClient();
byte[] sendBytes = Encoding.ASCII.GetBytes(message);
// send the message
// the destination is defined by the server name and port
u.BeginSend(sendBytes, sendBytes.Length, server, s_listenPort, new AsyncCallback(SendCallback), u);
// Do some work while we wait for the send to complete. For this example, we'll just sleep
while (!messageSent)
{
Thread.Sleep(100);
}
}
Açıklamalar
Zaman uyumsuz BeginSend işlem yöntemi çağrılarak EndSend tamamlanmalıdır. Genellikle, yöntemi temsilci tarafından çağrılır requestCallback
.
İşlem tamamlanana kadar bu yöntem engellemez. İşlem tamamlanana kadar engellemek için yöntem aşırı yüklemelerinden Send birini kullanın.
Zaman uyumsuz programlama modelini kullanma hakkında ayrıntılı bilgi için bkz. Zaman Uyumlu Yöntemleri Zaman Uyumsuz Olarak Çağırma.
Şunlara uygulanır
BeginSend(Byte[], Int32, IPEndPoint, AsyncCallback, Object)
- Kaynak:
- UDPClient.cs
- Kaynak:
- UDPClient.cs
- Kaynak:
- UDPClient.cs
Bir hedefe zaman uyumsuz olarak bir veri birimi gönderir. Hedef, tarafından EndPointbelirtilir.
public:
IAsyncResult ^ BeginSend(cli::array <System::Byte> ^ datagram, int bytes, System::Net::IPEndPoint ^ endPoint, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginSend (byte[] datagram, int bytes, System.Net.IPEndPoint? endPoint, AsyncCallback? requestCallback, object? state);
public IAsyncResult BeginSend (byte[] datagram, int bytes, System.Net.IPEndPoint endPoint, AsyncCallback requestCallback, object state);
member this.BeginSend : byte[] * int * System.Net.IPEndPoint * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (datagram As Byte(), bytes As Integer, endPoint As IPEndPoint, requestCallback As AsyncCallback, state As Object) As IAsyncResult
Parametreler
- bytes
- Int32
Gönderilecek bayt sayısı.
- endPoint
- IPEndPoint
EndPoint Verilerin hedefini temsil eden.
- requestCallback
- AsyncCallback
AsyncCallback İşlem tamamlandığında çağırma yöntemine başvuran bir temsilci.
- state
- Object
Gönderme işlemi hakkında bilgi içeren kullanıcı tanımlı bir nesne. İşlem tamamlandığında bu nesne temsilciye requestCallback
geçirilir.
Döndürülenler
IAsyncResult Zaman uyumsuz göndermeye başvuran bir nesne.
Örnekler
Aşağıdaki kod örneği, zaman uyumsuz olarak bir sunucu isteği göndermek için kullanır BeginSend .
public:
static bool isMessageSent;
static void SendCallback(IAsyncResult^ asyncResult)
{
UdpClient^ udpClient = (UdpClient^)asyncResult->AsyncState;
Console::WriteLine("number of bytes sent: {0}",
udpClient->EndSend(asyncResult));
isMessageSent = true;
}
public static bool messageSent = false;
public static void SendCallback(IAsyncResult ar)
{
UdpClient u = (UdpClient)ar.AsyncState;
Console.WriteLine($"number of bytes sent: {u.EndSend(ar)}");
messageSent = true;
}
public:
static void SendMessage2(String^ server, String^ message)
{
// create the udp socket
UdpClient^ udpClient = gcnew UdpClient();
array<Byte>^ sendBytes = Encoding::ASCII->GetBytes(message);
// resolve the server name
IPHostEntry^ resolvedServer = Dns::GetHostEntry(server);
IPEndPoint^ ipEndPoint =
gcnew IPEndPoint(resolvedServer->AddressList[0], listenPort);
// send the message
// the destination is defined by the IPEndPoint
udpClient->BeginSend(sendBytes, sendBytes->Length, ipEndPoint,
gcnew AsyncCallback(SendCallback), udpClient);
// Do some work while we wait for the send to complete. For
// this example, we'll just sleep
while (!isMessageSent)
{
Thread::Sleep(100);
}
}
static void SendMessage2(string server, string message)
{
// create the udp socket
UdpClient u = new UdpClient();
byte[] sendBytes = Encoding.ASCII.GetBytes(message);
// resolve the server name
IPHostEntry heserver = Dns.GetHostEntry(server);
IPEndPoint e = new IPEndPoint(heserver.AddressList[0], s_listenPort);
// send the message
// the destination is defined by the IPEndPoint
u.BeginSend(sendBytes, sendBytes.Length, e, new AsyncCallback(SendCallback), u);
// Do some work while we wait for the send to complete. For this example, we'll just sleep
while (!messageSent)
{
Thread.Sleep(100);
}
}
Açıklamalar
Zaman uyumsuz BeginSend işlem yöntemi çağrılarak EndSend tamamlanmalıdır. Genellikle, yöntemi temsilci tarafından çağrılır requestCallback
.
İşlem tamamlanana kadar bu yöntem engellemez. İşlem tamamlanana kadar engellemek için yöntem aşırı yüklemelerinden Send birini kullanın.
Zaman uyumsuz programlama modelini kullanma hakkında ayrıntılı bilgi için bkz. Zaman Uyumlu Yöntemleri Zaman Uyumsuz Olarak Çağırma.
Şunlara uygulanır
BeginSend(Byte[], Int32, AsyncCallback, Object)
- Kaynak:
- UDPClient.cs
- Kaynak:
- UDPClient.cs
- Kaynak:
- UDPClient.cs
Uzak bir konağa zaman uyumsuz olarak bir veri birimi gönderir. Hedef daha önce çağrısıyla Connectbelirtildi.
public:
IAsyncResult ^ BeginSend(cli::array <System::Byte> ^ datagram, int bytes, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginSend (byte[] datagram, int bytes, AsyncCallback? requestCallback, object? state);
public IAsyncResult BeginSend (byte[] datagram, int bytes, AsyncCallback requestCallback, object state);
member this.BeginSend : byte[] * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (datagram As Byte(), bytes As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult
Parametreler
- bytes
- Int32
Gönderilecek bayt sayısı.
- requestCallback
- AsyncCallback
AsyncCallback İşlem tamamlandığında çağırma yöntemine başvuran bir temsilci.
- state
- Object
Gönderme işlemi hakkında bilgi içeren kullanıcı tanımlı bir nesne. İşlem tamamlandığında bu nesne temsilciye requestCallback
geçirilir.
Döndürülenler
IAsyncResult Zaman uyumsuz göndermeye başvuran bir nesne.
Örnekler
Aşağıdaki kod örneği, zaman uyumsuz olarak bir sunucu isteği göndermek için kullanır BeginSend .
public:
static bool isMessageSent;
static void SendCallback(IAsyncResult^ asyncResult)
{
UdpClient^ udpClient = (UdpClient^)asyncResult->AsyncState;
Console::WriteLine("number of bytes sent: {0}",
udpClient->EndSend(asyncResult));
isMessageSent = true;
}
public static bool messageSent = false;
public static void SendCallback(IAsyncResult ar)
{
UdpClient u = (UdpClient)ar.AsyncState;
Console.WriteLine($"number of bytes sent: {u.EndSend(ar)}");
messageSent = true;
}
public:
static void SendMessage1(String^ server, String^ message)
{
// create the udp socket
UdpClient^ udpClient = gcnew UdpClient();
udpClient->Connect(server, listenPort);
array<Byte>^ sendBytes = Encoding::ASCII->GetBytes(message);
// send the message
// the destination is defined by the call to .Connect()
udpClient->BeginSend(sendBytes, sendBytes->Length,
gcnew AsyncCallback(SendCallback), udpClient);
// Do some work while we wait for the send to complete. For
// this example, we'll just sleep
while (!isMessageSent)
{
Thread::Sleep(100);
}
}
static void SendMessage1(string server, string message)
{
// create the udp socket
UdpClient u = new UdpClient();
u.Connect(server, s_listenPort);
byte[] sendBytes = Encoding.ASCII.GetBytes(message);
// send the message
// the destination is defined by the call to .Connect()
u.BeginSend(sendBytes, sendBytes.Length, new AsyncCallback(SendCallback), u);
// Do some work while we wait for the send to complete. For this example, we'll just sleep
while (!messageSent)
{
Thread.Sleep(100);
}
}
Açıklamalar
Zaman uyumsuz BeginSend işlem yöntemi çağrılarak EndSend tamamlanmalıdır. Genellikle, yöntemi temsilci tarafından çağrılır requestCallback
.
Bu yöntem işlem tamamlanana kadar engellemez. İşlem tamamlanana kadar engellemek için yöntem aşırı yüklemelerinden Send birini kullanın.
Zaman uyumsuz programlama modelini kullanma hakkında ayrıntılı bilgi için bkz. Zaman Uyumlu Yöntemleri Zaman Uyumsuz Olarak Çağırma.