Answers:
好吧,如果网络问题导致连接挂起,则意味着数据包无法通过。这当然意味着客户端的“密切连接”数据包也无法通过。
因此,在网络问题期间,服务器还不知道您已经杀死了客户端。如果它试图发送更多数据并且a)没有收到确认,或者b)收到重置数据包(“此连接不再存在”),它将只计算出来。
无论哪种方式,一旦它确定SSH连接被破坏,sshd将向前台运行的任何程序(你的shell,或你的文本编辑器,或其他)发送一个“挂断”(SIGHUP)信号。然后,shell将在退出之前向所有后台作业发送相同的SIGHUP。因此,您的后台作业也将退出。(nohup毕竟,这就是工具存在的原因。)
如果您ssh在网络正常时终止,同样的情况发生 - 服务器将收到“连接重置”数据包并向shell发送“挂断”。
最后,如果您通过shell本身注销(使用exit或CtrlD),它也将自己完成相同的清理过程,尽管这次它有机会提醒您有关正在运行的作业。