Socket.SendTo 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将数据发送到特定终结点。
重载
SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint) |
使用指定的 SocketFlags,将指定字节数的数据发送到指定终结点(从缓冲区中的指定位置开始)。 |
SendTo(Byte[], Int32, SocketFlags, EndPoint) |
使用指定的 SocketFlags,将指定字节数的数据发送到指定的终结点。 |
SendTo(ReadOnlySpan<Byte>, SocketFlags, SocketAddress) |
使用指定的 SocketFlags,将数据发送到特定的终结点。 |
SendTo(ReadOnlySpan<Byte>, EndPoint) |
将数据发送到指定的终结点。 |
SendTo(Byte[], SocketFlags, EndPoint) |
使用指定的 SocketFlags,将数据发送到特定的终结点。 |
SendTo(Byte[], EndPoint) |
将数据发送到指定的终结点。 |
SendTo(ReadOnlySpan<Byte>, SocketFlags, EndPoint) |
使用指定的 SocketFlags,将数据发送到特定的终结点。 |
SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
使用指定的 SocketFlags,将指定字节数的数据发送到指定终结点(从缓冲区中的指定位置开始)。
public:
int SendTo(cli::array <System::Byte> ^ buffer, int offset, int size, System::Net::Sockets::SocketFlags socketFlags, System::Net::EndPoint ^ remoteEP);
public int SendTo (byte[] buffer, int offset, int size, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEP);
member this.SendTo : byte[] * int * int * System.Net.Sockets.SocketFlags * System.Net.EndPoint -> int
Public Function SendTo (buffer As Byte(), offset As Integer, size As Integer, socketFlags As SocketFlags, remoteEP As EndPoint) As Integer
参数
- offset
- Int32
开始发送数据的缓冲区中的位置。
- size
- Int32
要发送的字节数。
- socketFlags
- SocketFlags
SocketFlags 值的按位组合。
返回
已发送的字节数。
例外
offset
小于 0。
或
offset
大于 buffer
的长度。
或
size
小于 0。
- 或 -
size
大于 buffer
的长度减去 offset
参数的值。
调用堆栈中的调用方没有所需的权限。
示例
下面的代码示例将无连接数据报发送到指定的远程主机。 偏移量、大小 和 SocketFlags 将 SendTo 传递给 方法。
static void SendTo4()
{
IPHostEntry^ hostEntry = Dns::Resolve( Dns::GetHostName() );
IPEndPoint^ endPoint = gcnew IPEndPoint( hostEntry->AddressList[ 0 ],11000 );
Socket^ s = gcnew Socket( endPoint->Address->AddressFamily,
SocketType::Dgram,
ProtocolType::Udp );
array<Byte>^ msg = Encoding::ASCII->GetBytes( "This is a test" );
Console::WriteLine( "Sending data." );
// This call blocks.
s->SendTo( msg, 0, msg->Length, SocketFlags::None, endPoint );
s->Close();
}
public static void SendTo4()
{
IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName());
IPEndPoint endPoint = new IPEndPoint(hostEntry.AddressList[0], 11000);
Socket s = new Socket(endPoint.Address.AddressFamily,
SocketType.Dgram,
ProtocolType.Udp);
byte[] msg = Encoding.ASCII.GetBytes("This is a test");
Console.WriteLine("Sending data.");
// This call blocks.
s.SendTo(msg, 0, msg.Length, SocketFlags.None, endPoint);
s.Close();
}
Public Shared Sub SendTo4()
Dim hostEntry As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
Dim endPoint As New IPEndPoint(hostEntry.AddressList(0), 11000)
Dim s As New Socket(endPoint.Address.AddressFamily, SocketType.Dgram, ProtocolType.Udp)
Dim msg As Byte() = Encoding.ASCII.GetBytes("This is a test")
Console.WriteLine("Sending data.")
' This call blocks.
s.SendTo(msg, 0, msg.Length, SocketFlags.None, endPoint)
s.Close()
End Sub
注解
在此重载中 DontRoute ,如果将 标志指定为 socketflags
参数,则不会路由要发送的数据。
如果使用无连接协议,则无需在调用 SendTo之前使用 Connect 方法建立默认远程主机。 仅当你打算调用 Send 方法时,才需要执行此操作。 如果在调用 之前SendTo调用 Connect 方法,则remoteEP
参数将仅覆盖该发送操作的指定默认远程主机。 也不需要调用 Bind 方法,因为基础服务提供商将分配最合适的本地网络地址和端口号。 如果需要标识分配的本地网络地址和端口号,可以在 方法成功完成后SendTo使用 LocalEndPoint 属性。
虽然适用于无连接协议, SendTo 但也适用于面向连接的协议。 如果使用面向连接的协议,则必须首先通过调用 Connect 方法建立远程主机连接,或使用 方法接受传入连接请求 Accept 。 如果未建立或接受远程主机连接, SendTo 将引发 SocketException。 在调用 SendTo 方法之前,还可以为无连接协议建立默认远程主机。 在这两种情况下, SendTo 都将忽略 参数, remoteEP
仅将数据发送到连接的或默认的远程主机。
阻止套接字将阻止,直到发送请求的字节数。 由于非阻塞 Socket 会立即完成,因此它可能不会发送单个操作中请求的所有字节。 应用程序负责跟踪发送的字节数,并重试操作,直到应用程序发送请求的字节数。 也不保证发送的数据会立即出现在网络上。 为了提高网络效率,基础系统可能会延迟传输,直到收集大量外出数据。 方法的 SendTo 成功完成意味着基础系统有空间来缓冲网络发送的数据。
如果在阻止模式下使用无连接协议, SendTo 将阻止,直到发送数据报。 如果要将数据发送到广播地址,必须首先调用 SetSocketOption 方法并将套接字选项设置为 SocketOptionName.Broadcast。 还必须确保大小不超过基础服务提供程序的最大数据包大小。 如果存在,则不会发送数据报,并且 SendTo 会引发 SocketException。
注意
如果收到 , SocketException请使用 SocketException.ErrorCode 属性获取特定的错误代码。 获取此代码后,请参阅 Windows 套接字版本 2 API 错误代码 文档,了解错误的详细说明。
备注
当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅 .NET Framework 中的网络跟踪。
另请参阅
- Connect(EndPoint)
- Bind(EndPoint)
- Send(Byte[], Int32, SocketFlags)
- SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)
- SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- LocalEndPoint
适用于
SendTo(Byte[], Int32, SocketFlags, EndPoint)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
使用指定的 SocketFlags,将指定字节数的数据发送到指定的终结点。
public:
int SendTo(cli::array <System::Byte> ^ buffer, int size, System::Net::Sockets::SocketFlags socketFlags, System::Net::EndPoint ^ remoteEP);
public int SendTo (byte[] buffer, int size, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEP);
member this.SendTo : byte[] * int * System.Net.Sockets.SocketFlags * System.Net.EndPoint -> int
Public Function SendTo (buffer As Byte(), size As Integer, socketFlags As SocketFlags, remoteEP As EndPoint) As Integer
参数
- size
- Int32
要发送的字节数。
- socketFlags
- SocketFlags
SocketFlags 值的按位组合。
返回
已发送的字节数。
例外
指定的 size
超出 buffer
的大小。
尝试访问套接字时出错。
示例
下面的代码示例将无连接数据报发送到指定的远程主机。 大小 和 SocketFlags 将 SendTo 传递给 方法。
static void SendTo3()
{
IPHostEntry^ hostEntry = Dns::Resolve( Dns::GetHostName() );
IPEndPoint^ endPoint = gcnew IPEndPoint( hostEntry->AddressList[ 0 ],11000 );
Socket^ s = gcnew Socket( endPoint->Address->AddressFamily,
SocketType::Dgram,
ProtocolType::Udp );
array<Byte>^ msg = Encoding::ASCII->GetBytes( "This is a test" );
Console::WriteLine( "Sending data." );
// This call blocks.
s->SendTo( msg, msg->Length, SocketFlags::None, endPoint );
s->Close();
}
public static void SendTo3()
{
IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName());
IPEndPoint endPoint = new IPEndPoint(hostEntry.AddressList[0], 11000);
Socket s = new Socket(endPoint.Address.AddressFamily,
SocketType.Dgram,
ProtocolType.Udp);
byte[] msg = Encoding.ASCII.GetBytes("This is a test");
Console.WriteLine("Sending data.");
// This call blocks.
s.SendTo(msg, msg.Length, SocketFlags.None, endPoint);
s.Close();
}
Public Shared Sub SendTo3()
Dim hostEntry As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
Dim endPoint As New IPEndPoint(hostEntry.AddressList(0), 11000)
Dim s As New Socket(endPoint.Address.AddressFamily, SocketType.Dgram, ProtocolType.Udp)
Dim msg As Byte() = Encoding.ASCII.GetBytes("This is a test")
Console.WriteLine("Sending data.")
' This call blocks.
s.SendTo(msg, msg.Length, SocketFlags.None, endPoint)
s.Close()
End Sub
注解
在此重载中,缓冲区偏移量默认为 0。 如果将 标志指定 DontRoute 为 socketflags
参数,则不会路由要发送的数据。
如果使用无连接协议,则无需在调用 SendTo之前使用 Connect 方法建立默认远程主机。 仅当你打算调用 Send 方法时,才需要执行此操作。 如果在调用 之前SendTo调用 Connect 方法,则remoteEP
参数将仅覆盖该发送操作的指定默认远程主机。 也不需要调用 Bind 方法,因为基础服务提供商将分配最合适的本地网络地址和端口号。 如果需要标识分配的本地网络地址和端口号,可以在 方法成功完成后SendTo使用 LocalEndPoint 属性。
虽然适用于无连接协议, SendTo 但也适用于面向连接的协议。 如果使用面向连接的协议,则必须首先通过调用 Connect 方法建立远程主机连接,或使用 方法接受传入连接请求 Accept 。 如果未建立或接受远程主机连接, SendTo 将引发 SocketException。 在调用 SendTo 方法之前,还可以为无连接协议建立默认远程主机。 在这两种情况下, SendTo 都将忽略 参数, remoteEP
仅将数据发送到连接的或默认的远程主机。
阻止套接字将阻止,直到发送请求的字节数。 由于非阻止 Socket 立即完成,因此它可能不会发送单个操作中请求的所有字节。 应用程序负责跟踪发送的字节数,并重试操作,直到应用程序发送请求的字节数。 也不保证发送的数据会立即出现在网络上。 为了提高网络效率,基础系统可能会延迟传输,直到收集大量外出数据。 方法的 SendTo 成功完成意味着基础系统有空间来缓冲网络发送的数据。
如果在阻止模式下使用无连接协议, SendTo 将阻止,直到发送数据报。 如果要将数据发送到广播地址,必须首先调用 SetSocketOption 方法并将套接字选项设置为 SocketOptionName.Broadcast。 还必须确保发送的字节数不超过基础服务提供程序的最大数据包大小。 如果已发送,则不会发送数据报,并将 SendTo 引发 SocketException。
注意
如果收到 , SocketException请使用 SocketException.ErrorCode 属性获取特定的错误代码。 获取此代码后,请参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。
备注
当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅 .NET Framework 中的网络跟踪。
另请参阅
- Connect(EndPoint)
- Bind(EndPoint)
- Send(Byte[], Int32, SocketFlags)
- SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)
- SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- LocalEndPoint
适用于
SendTo(ReadOnlySpan<Byte>, SocketFlags, SocketAddress)
- Source:
- Socket.cs
- Source:
- Socket.cs
使用指定的 SocketFlags,将数据发送到特定的终结点。
public:
int SendTo(ReadOnlySpan<System::Byte> buffer, System::Net::Sockets::SocketFlags socketFlags, System::Net::SocketAddress ^ socketAddress);
public int SendTo (ReadOnlySpan<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.SocketAddress socketAddress);
member this.SendTo : ReadOnlySpan<byte> * System.Net.Sockets.SocketFlags * System.Net.SocketAddress -> int
Public Function SendTo (buffer As ReadOnlySpan(Of Byte), socketFlags As SocketFlags, socketAddress As SocketAddress) As Integer
参数
- buffer
- ReadOnlySpan<Byte>
一个字符范围,其中包含要发送的数据。
- socketFlags
- SocketFlags
发送数据时将使用的值的按位组合 SocketFlags 。
- socketAddress
- SocketAddress
SocketAddress,它表示数据的目标位置。
返回
已发送的字节数。
例外
socketAddress
为 null
。
尝试访问套接字时出错。
适用于
SendTo(ReadOnlySpan<Byte>, EndPoint)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
将数据发送到指定的终结点。
public:
int SendTo(ReadOnlySpan<System::Byte> buffer, System::Net::EndPoint ^ remoteEP);
public int SendTo (ReadOnlySpan<byte> buffer, System.Net.EndPoint remoteEP);
member this.SendTo : ReadOnlySpan<byte> * System.Net.EndPoint -> int
Public Function SendTo (buffer As ReadOnlySpan(Of Byte), remoteEP As EndPoint) As Integer
参数
- buffer
- ReadOnlySpan<Byte>
一个字符范围,其中包含要发送的数据。
返回
已发送的字节数。
例外
remoteEP
为 null
。
尝试访问套接字时出错。
适用于
SendTo(Byte[], SocketFlags, EndPoint)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
使用指定的 SocketFlags,将数据发送到特定的终结点。
public:
int SendTo(cli::array <System::Byte> ^ buffer, System::Net::Sockets::SocketFlags socketFlags, System::Net::EndPoint ^ remoteEP);
public int SendTo (byte[] buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEP);
member this.SendTo : byte[] * System.Net.Sockets.SocketFlags * System.Net.EndPoint -> int
Public Function SendTo (buffer As Byte(), socketFlags As SocketFlags, remoteEP As EndPoint) As Integer
参数
- socketFlags
- SocketFlags
SocketFlags 值的按位组合。
返回
已发送的字节数。
例外
尝试访问套接字时出错。
示例
下面的代码示例将无连接数据报发送到指定的远程主机。 SocketFlags 传递给 SendTo 方法。
static void SendTo2()
{
IPHostEntry^ hostEntry = Dns::Resolve( Dns::GetHostName() );
IPEndPoint^ endPoint = gcnew IPEndPoint( hostEntry->AddressList[ 0 ],11000 );
Socket^ s = gcnew Socket( endPoint->Address->AddressFamily,
SocketType::Dgram,
ProtocolType::Udp );
array<Byte>^ msg = Encoding::ASCII->GetBytes( "This is a test" );
Console::WriteLine( "Sending data." );
// This call blocks.
s->SendTo( msg, SocketFlags::None, endPoint );
s->Close();
}
public static void SendTo2()
{
IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName());
IPEndPoint endPoint = new IPEndPoint(hostEntry.AddressList[0], 11000);
Socket s = new Socket(endPoint.Address.AddressFamily,
SocketType.Dgram,
ProtocolType.Udp);
byte[] msg = Encoding.ASCII.GetBytes("This is a test");
Console.WriteLine("Sending data.");
// This call blocks.
s.SendTo(msg, SocketFlags.None, endPoint);
s.Close();
}
Public Shared Sub SendTo2()
Dim hostEntry As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
Dim endPoint As New IPEndPoint(hostEntry.AddressList(0), 11000)
Dim s As New Socket(endPoint.Address.AddressFamily, SocketType.Dgram, ProtocolType.Udp)
Dim msg As Byte() = Encoding.ASCII.GetBytes("This is a test")
Console.WriteLine("Sending data.")
' This call blocks.
s.SendTo(msg, SocketFlags.None, endPoint)
s.Close()
End Sub
注解
在此重载中,缓冲区偏移量默认为 0,要发送的字节数默认为 的大小 buffer
。 如果将 标志指定 DontRoute 为 socketflags
参数,则不会路由要发送的数据。
如果使用无连接协议,则无需在调用 SendTo之前使用 Connect 方法建立默认远程主机。 仅当打算调用 方法时, Send 才需要执行此操作。 如果在调用 Connect 之前 SendTo调用 方法,则 remoteEP
参数将仅重写该发送操作的指定默认远程主机。 也不需要调用 Bind 方法,因为基础服务提供程序将分配最合适的本地网络地址和端口号。 如果需要标识分配的本地网络地址和端口号,可以在 方法成功完成后SendTo使用 LocalEndPoint 属性。
虽然适用于无连接的协议, SendTo 但也适用于面向连接的协议。 如果使用面向连接的协议,则必须先通过调用 方法建立远程主机连接, Connect 或使用 方法接受传入的连接请求 Accept 。 如果不建立或接受远程主机连接, SendTo 将引发 SocketException。 在调用 SendTo 方法之前,还可以为无连接协议建立默认远程主机。 在上述任一情况下, SendTo 都将忽略 参数, remoteEP
仅将数据发送到连接的或默认的远程主机。
阻止套接字将阻塞,直到发送请求的所有字节 buffer
。 由于非阻止 Socket 会立即完成,因此它可能不会发送 中的所有 buffer
字节。 应用程序负责跟踪发送的字节数,并重试操作,直到应用程序发送 中的所有 buffer
字节。 也不保证发送的数据会立即显示在网络上。 为了提高网络效率,基础系统可能会延迟传输,直到收集大量传出的数据。
SendTo成功完成方法意味着基础系统有空间来缓冲网络发送的数据。
如果在阻止模式下使用无连接协议, SendTo 将阻止,直到发送数据报。 如果要将数据发送到广播地址,必须先调用 SetSocketOption 方法并将套接字选项设置为 SocketOptionName.Broadcast。 还必须确保发送的字节数不超过基础服务提供程序的最大数据包大小。 如果已发送,则不会发送数据报,并将 SendTo 引发 SocketException。
注意
如果收到 , SocketException请使用 SocketException.ErrorCode 属性获取特定的错误代码。 获取此代码后,请参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。
备注
当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅 .NET Framework 中的网络跟踪。
另请参阅
- Connect(EndPoint)
- Bind(EndPoint)
- Send(Byte[], Int32, SocketFlags)
- SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)
- SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- LocalEndPoint
适用于
SendTo(Byte[], EndPoint)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
将数据发送到指定的终结点。
public:
int SendTo(cli::array <System::Byte> ^ buffer, System::Net::EndPoint ^ remoteEP);
public int SendTo (byte[] buffer, System.Net.EndPoint remoteEP);
member this.SendTo : byte[] * System.Net.EndPoint -> int
Public Function SendTo (buffer As Byte(), remoteEP As EndPoint) As Integer
参数
返回
已发送的字节数。
例外
尝试访问套接字时出错。
示例
下面的代码示例将无连接数据报发送到指定的远程主机。
static void SendTo1()
{
IPHostEntry^ hostEntry = Dns::Resolve( Dns::GetHostName() );
IPEndPoint^ endPoint = gcnew IPEndPoint( hostEntry->AddressList[ 0 ],11000 );
Socket^ s = gcnew Socket( endPoint->Address->AddressFamily,
SocketType::Dgram,
ProtocolType::Udp );
array<Byte>^ msg = Encoding::ASCII->GetBytes( "This is a test" );
Console::WriteLine( "Sending data." );
// This call blocks.
s->SendTo( msg, endPoint );
s->Close();
}
public static void SendTo1()
{
IPHostEntry hostEntry = Dns.GetHostEntry(Dns.GetHostName());
IPEndPoint endPoint = new IPEndPoint(hostEntry.AddressList[0], 11000);
Socket s = new Socket(endPoint.Address.AddressFamily,
SocketType.Dgram,
ProtocolType.Udp);
byte[] msg = Encoding.ASCII.GetBytes("This is a test");
Console.WriteLine("Sending data.");
// This call blocks.
s.SendTo(msg, endPoint);
s.Close();
}
Public Shared Sub SendTo1()
Dim hostEntry As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
Dim endPoint As New IPEndPoint(hostEntry.AddressList(0), 11000)
Dim s As New Socket(endPoint.Address.AddressFamily, SocketType.Dgram, ProtocolType.Udp)
Dim msg As Byte() = Encoding.ASCII.GetBytes("This is a test")
Console.WriteLine("Sending data.")
' This call blocks.
s.SendTo(msg, endPoint)
s.Close()
End Sub
注解
在此重载中,缓冲区偏移量默认为 0,要发送的字节数默认为参数的大小 buffer
, SocketFlags 值默认为 0。
如果使用无连接协议,则无需在调用 SendTo之前使用 Connect 方法建立默认远程主机。 仅当打算调用 方法时, Send 才需要执行此操作。 如果在调用 Connect 之前 SendTo调用 方法,则 remoteEP
参数将仅重写该发送操作的指定默认远程主机。 也不需要调用 Bind 方法,因为基础服务提供程序将分配最合适的本地网络地址和端口号。 如果需要标识分配的本地网络地址和端口号,可以在 方法成功完成后SendTo使用 LocalEndPoint 属性。
虽然适用于无连接的协议, SendTo 但也适用于面向连接的协议。 如果使用面向连接的协议,则必须先通过调用 方法建立远程主机连接, Connect 或使用 方法接受传入的连接请求 Accept 。 如果不建立或接受远程主机连接, SendTo 将引发 SocketException。 在调用 SendTo 方法之前,还可以为无连接协议建立默认远程主机。 在上述任一情况下, SendTo 都将忽略 参数, remoteEP
仅将数据发送到连接的或默认的远程主机。
阻塞套接字将阻塞,直到发送缓冲区中的所有字节。 由于非阻止 Socket 会立即完成,因此它可能不会发送 中的所有 buffer
字节。 应用程序负责跟踪发送的字节数,并重试操作,直到应用程序发送 中的所有 buffer
字节。 也不保证发送的数据会立即显示在网络上。 为了提高网络效率,基础系统可能会延迟传输,直到收集大量传出数据。
SendTo成功完成方法意味着基础系统有空间来缓冲网络发送的数据。
如果在阻止模式下使用无连接协议, SendTo 将阻止,直到发送数据报。 如果要将数据发送到广播地址,必须先调用 SetSocketOption 方法并将套接字选项设置为 SocketOptionName.Broadcast。 还必须确保发送的字节数不超过基础服务提供程序的最大数据包大小。 如果已发送,则不会发送数据报,并将 SendTo 引发 SocketException。
注意
如果收到 , SocketException请使用 SocketException.ErrorCode 属性获取特定的错误代码。 获取此代码后,请参阅 Windows 套接字版本 2 API 错误代码 文档,获取错误的详细说明。
备注
当你在应用程序中启用网络跟踪后,此成员将输出跟踪信息。 有关详细信息,请参阅 .NET Framework 中的网络跟踪。
另请参阅
- Connect(EndPoint)
- Bind(EndPoint)
- Send(Byte[], Int32, SocketFlags)
- SendTo(Byte[], Int32, Int32, SocketFlags, EndPoint)
- SetSocketOption(SocketOptionLevel, SocketOptionName, Int32)
- LocalEndPoint
适用于
SendTo(ReadOnlySpan<Byte>, SocketFlags, EndPoint)
- Source:
- Socket.cs
- Source:
- Socket.cs
- Source:
- Socket.cs
使用指定的 SocketFlags,将数据发送到特定的终结点。
public:
int SendTo(ReadOnlySpan<System::Byte> buffer, System::Net::Sockets::SocketFlags socketFlags, System::Net::EndPoint ^ remoteEP);
public int SendTo (ReadOnlySpan<byte> buffer, System.Net.Sockets.SocketFlags socketFlags, System.Net.EndPoint remoteEP);
member this.SendTo : ReadOnlySpan<byte> * System.Net.Sockets.SocketFlags * System.Net.EndPoint -> int
Public Function SendTo (buffer As ReadOnlySpan(Of Byte), socketFlags As SocketFlags, remoteEP As EndPoint) As Integer
参数
- buffer
- ReadOnlySpan<Byte>
一个字符范围,其中包含要发送的数据。
- socketFlags
- SocketFlags
SocketFlags 值的按位组合。
返回
已发送的字节数。
例外
remoteEP
为 null
。
尝试访问套接字时出错。