pub rec Socket;
已绑定或未绑定的 UDP 套接字
fd:底层套接字文件描述符
pub fun create() Result[Socket, str];
创建一个未绑定的 UDP 套接字
ret:套接字,或错误消息
pub fun bind(ep: ip.Endpoint) Result[Socket, str];
创建一个绑定到端点的 UDP 套接字
ep:要绑定的端点 ret:已绑定的套接字,或错误消息
pub fun send_to(s: *Socket, buf: *u8, len: usize, ep: ip.Endpoint) i64;
向远程端点发送数据报
s:用于发送的套接字 buf:源缓冲区 len:要发送的字节数 ep:目标端点 ret:已发送的字节数,或在出错时返回负数
pub fun recv_from(s: *Socket, buf: *u8, len: usize, ep: *ip.Endpoint) i64;
接收数据报并填充源端点
s:用于接收的套接字 buf:目标缓冲区 len:最大接收字节数 ep:指向用源地址填充的 Endpoint 的指针 ret:已接收的字节数,或在出错时返回负数
pub fun socket_close(s: *Socket);
关闭 UDP 套接字
s:要关闭的套接字