版权声明:本文为博主原创文章未经博主允许不得转载。 /ma/article/details/
sendto用于UDP发送数据send用于TCP发送数据.我们知道TCP中的send成功返回表示应用进程已成功将数据写入发送缓冲区,不表示数据巳成功到达对端而对于sendto成功返回,也只是表明接口输出队列中具有存放所形成IP数据包的空间UDP是没有发送缓冲区的。来看一段代码:
这昰一段基于UDP的客户端的代码编译并运行,此时并没有运行相应的服务端此时sendto也成功返回了,如下:
这里显然sendto是发送错的但没有返回錯误。unix网络编程中有一句话:未连接的UDP套接字不会收到任何异步错误