TCP通信时Socket两端的模式能不能不一样?

发布于 2022-09-01 17:02:43 字数 57 浏览 12 评论 0

比如在CS模型中,能不能C端为阻塞模式,用Stream读写,而S端为非阻塞模式,用Buffer读写?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ゝ杯具 2022-09-08 17:02:43

socket就是一个文件描述符,你可以用阻塞型api去读写,也可以把它转为非阻塞型进行读写,它不关TCP事,也不关是否是客户端还是服务器的事,如:
对一个可读写的socket, 通常用read, write函数默认就是阻塞的,可以用ioctl或fcntl把socket变成NON_BLOCK,这时read/write就是马上返回的,当然也可以在不变成NON_BLOCK的情况下,用select函数实现非阻塞+超时读。
把读出来的data存放在一个char []里面,就是buffer了,buffer依情况而定,満了就回调送给上层,这是网络编程知识,不是socket本身的限制,建议你系统的了解和学习一下网络编程。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文