SRT和TCP read和write返回值记录

简单写了个连接测试,查看下SRT的返回值同TCP有何区别

SRT

  1. 只发不收
    srt_send返回值-1,链接不断开
    srt_getlasterrno返回值为6001(SRT_EASYNCSND)
    接收方报错:No room to store incoming packet
  2. 发送长度填0
    srt_send返回值0,链接不断开
    发送方报错:INVALID: Data size for sending declare with length: 0
  3. 发送时,对端关闭
    srt_send返回-1
    srt_getlasterrno返回值为2001(SRT_ECONNLOST)
    即使buffer长度为0,srt_send也返回-1,错误码2001

TCP

  1. 只发不收
    send返回值-1
    errno为11(EAGAIN)
  2. 发送长度填0
    send返回值为0
  3. 发送时,对端关闭
    send返回值-1,errno为104(ECONNRESET)
    如果send的buffer参数填0,那么send返回值不是-1,而是0

你可能感兴趣的:(流媒体)