当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust UdpSocket.connect用法及代码示例


本文简要介绍rust语言中 std::net::UdpSocket.connect 的用法。

用法

pub fn connect<A: ToSocketAddrs>(&self, addr: A) -> Result<()>

将此 UDP 套接字连接到远程地址,允许使用 sendrecv 系统调用发送数据,并应用过滤器仅从指定地址接收数据。

如果addr 产生多个地址,则将对每个地址尝试connect,直到底层操作系统函数不返回错误。请注意,通常,成功的connect 调用并不指定有远程服务器在该端口上侦听,而是只有在第一次发送后才会检测到此类错误。如果操作系统为每个指定地址返回错误,则返回上次连接尝试返回的错误(最后一个地址)。

例子

创建一个绑定到 127.0.0.1:3400 的 UDP 套接字并将套接字连接到 127.0.0.1:8080

use std::net::UdpSocket;

let socket = UdpSocket::bind("127.0.0.1:3400").expect("couldn't bind to address");
socket.connect("127.0.0.1:8080").expect("connect function failed");

与 TCP 情况不同,将地址数组传递给 UDP 套接字的 connect 函数并不是一件有用的事情:如果应用程序不发送数据,操作系统将无法确定某些内容是否正在侦听远程地址。

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 std::net::UdpSocket.connect。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。