V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
paparika
V2EX  ›  Linux

tcp/udp socket 读 0 个字节起什么作用?

  •  
  •   paparika · 2018-04-11 14:49:00 +08:00 · 3129 次点击
    这是一个创建于 2426 天前的主题,其中的信息可能已经有所发展或是发生改变。
    注意是读取 0 字节,不是返回 0
    5 条回复    2018-04-17 15:39:27 +08:00
    liuminghao233
        1
    liuminghao233  
       2018-04-11 15:24:17 +08:00 via iPhone
    跟读 n 个字节是一样的
    只不过会马上返回
    neoblackcap
        2
    neoblackcap  
       2018-04-11 15:51:05 +08:00
    之前看了一个类似的问题,记得 tcp socket 实现不了你这样的需求
    projectzoo
        3
    projectzoo  
       2018-04-12 13:40:51 +08:00
    发送 0 个字节比价有意思?
    paparika
        4
    paparika  
    OP
       2018-04-12 15:51:54 +08:00
    看到的一道面试题
    raysonx
        5
    raysonx  
       2018-04-17 15:39:27 +08:00 via Android
    我猜在 TCP 套接字上读 0 字节是用来“检测”连接是否已被关闭。然而这并不是一种可靠的检测方法。
    首先,如果读缓存里还有未读的数据,读 0 字节并不会报错。
    其次,TCP 是全双工的,可以是关闭读方向的连接同时保持写方向打开。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1029 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:04 · PVG 07:04 · LAX 15:04 · JFK 18:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.