我们使用socket进行网络通信时,通过调用socket()
函数创建一个文件描述符fd进行通信。
而socket所创建的文件描述符fd拥有两块内存缓冲区:
问题是怎么记忆区分这两个缓冲区呢🤔️?
我们举一个例子🌰:服务端sfd给客户端cfd发送数据。
1、服务端调用write()
把数据写进发送缓冲区,也就是写缓冲区了。
2、内核读取写缓冲区数据后发送给客户端接收缓冲区,也就是读缓冲区了。
3、客户端调用read()
把数据从读缓冲区读出。
结合以上例子,我们可以联系write()/read()
函数,以及发送缓冲区/接收缓冲区,来记忆区分写/读缓冲区。
本文发布于:2024-01-31 09:39:25,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170666516627589.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |