dsrnwngq411594 2017-12-25 05:44
浏览 194
已采纳

发送消息后从TCP套接字断开连接是否可以保证传递?

I couldn't find much information on this, but I have a simple sequence of code like:

// does it wait on Write() until successful handshake or attempt failure
// or just continue on straight away?
net.conn.Write(buffer[1:60])
conn.Close()

Does this guarantee delivery to client/server before Close is called? Or will Close be called after the message sent, and potentially close the connection during the handshakes if they were too slow to complete in time ?

  • 写回答

2条回答 默认 最新

  • dongyuan8469 2017-12-25 07:22
    关注

    Does this guarantee delivery to client/server before Close is called?

    No.

    Or will Close be called after the message sent

    Both the write and the close are queued for asynchronous execution.

    and potentially close the connection during the handshakes if they were too slow to complete in time?

    Close will queue a close for the connection. If the close handshake takes too long the connection will be reset.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?