今天写了个程序是回射客户/服务器的连接程序,首次开启服务端没有任何问题,再次开启服务端的时候就出现
了,一直出现Address already in use的异常,代码检查了好几遍,没有什么问题,最后终于找到问题的出处,在终端
Terminal在关闭服务器端的时候,用的快捷键是ctrl+z,原来是ctrl+c和ctrl+z作用是不一样的。
1、ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样.
a、ctrl+c是强制中断程序的执行。
b、ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态,用户可以使用fg/bg操作继
续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行.
例如:当你vi一个文件是,如果需要用shell执行别的操作,但是你又不打算关闭vi,因为你得存盘推出,你可以简单的 按
下ctrl+z,shell会将vi进程挂起~,当你结束了那个shell操作之后,你可以用fg命令继续vi你的文件。
本文详细介绍了在尝试重新启动服务端时遇到的Addressalreadyinuse异常的问题,以及如何通过正确使用ctrl+c和ctrl+z来避免此问题。文章深入探讨了中断命令的作用,包括ctrl+c强制中断程序执行与ctrl+z将任务挂起的不同之处,为开发者提供了有效的解决方案。
2572

被折叠的 条评论
为什么被折叠?



