recv 和 recvfrom的区别

recv 和 recvfrom的区别

recv

不等待是因为使用的是非阻塞socket,换而使用阻塞socket一样需要等待。

recvfrom

同理,也可以使用非阻塞方式


recv的recvfrom是可以替换使用的

只是recvfrom多了两个参数,可以用来接收对端的地址信息,这个对于udp这种无连接的,可以很方便地进行回复。

而换过来如果在udp当中也使用recv,那么就不知道该回复给谁了,如果你不需要回复的话,也是可以使用的。

另外就是对于tcp是已经知道对端的,就没必要每次接收还多收一个地址,没有意义要取地址信息,在accept当中取得就可以加以记录了。

原文地址:https://www.cnblogs.com/p2liu/p/6048755.html