重启报端口占用

场景:~/服务/答.py 收到 bye 就先 close 客户端(服务端先关)。同事刚停掉它想重启,一起就报 [Errno 98] Address already in use,可 ss -tln 上根本没人在听那个端口。~/复现.sh 能

开始练习 →

交付:一个关得干净的服务

场景:要交付一个 TCP 服务和它的启动脚本,端口在说明里。 任务:写 ~/服务/答.py(bind 前设 SO_REUSEADDR;一个客户端一个客户端地接;每行 ping 回 pong、bye 回 bye 并 close 这个客户端、对

开始练习 →

socket 是什么

程序里的一个 socket,本质是【0】。

开始练习 →

服务端的四步

服务端把 socket 备好,bind(占端口)、listen(开听)、accept(接客)的顺序是【0】。

开始练习 →

accept 交回的是什么

服务端 accept() 返回的是【0】。

开始练习 →

客户端要几步

客户端连上服务端、开始收发,最少的步骤是【0】。

开始练习 →

send 一次对面 recv 一次吗

你连着发了三次,对面收的时候会不会正好三次各拿一段?【0】。

开始练习 →

两边各调哪些

把七个调用分给服务端和客户端,数一数各用几个(有的两边都用): server = {"bind", "listen", "accept", "recv", &q

开始练习 →

listen 的参数是什么

listen(8) 里的 8 是【0】。

开始练习 →

accept 没连接时会怎样

队列里没有等待的连接时,真 socket 的 accept() 会【0】。

开始练习 →