【发布时间】:2026-01-09 03:30:01
【问题描述】:
我想向服务器发送数据,然后等待一分钟的应答,然后关闭套接字。
怎么做?
DatagramPacket sendpack = new ......;
socket.send(pack);
DatagramPacket recievepack = new .....;
//wait 1 minute{
socket.recieve(buf);
//wait 1 minute}
socket.close();
【问题讨论】:
-
您是否需要等待一分钟或数据在套接字上可用?如果您想等待一整分钟,我会使用 sleep 或 usleep 功能。这些将在一段时间内到期,然后再继续。如果您正在等待数据,我会查看 select 函数,它允许您等待数据到达或一段时间到期,以先到者为准。
-
@Glenn 睡眠可能会浪费一分钟。如果数据在一秒钟后到达怎么办?您认为 的读取超时究竟是什么?