socket程序退出后有时候端口还没有释放?请问高人如何解决啊。正确立马结帖。
处理如下信号,然后在sig_exit中close掉socket.但有时候端口没有释放掉。
signal(SIGINT, sig_exit); /*设置中断退出*/
signal(SIGHUP, sig_exit);
signal(SIGQUIT, sig_exit);
signal(SIGABRT, sig_exit);
signal(SIGKILL, sig_exit);
signal(SIGTERM, sig_exit);
signal(SIGCHLD, SIG_IGN );
signal(SIGSTOP, sig_exit);
signal(SIGXCPU, sig_exit);
signal(SIGPROF, sig_exit);
signal(SIGWINCH, sig_exit);
signal(SIGIO, SIG_IGN );
signal(SIGPWR, sig_exit);
signal(SIGILL, sig_exit);
signal(SIGSEGV, sig_exit);
signal(SIGINT, sig_exit); /*设置中断退出*/
signal(SIGHUP, sig_exit);
signal(SIGQUIT, sig_exit);
signal(SIGABRT, sig_exit);
signal(SIGKILL, sig_exit);
signal(SIGTERM, sig_exit);
signal(SIGCHLD, SIG_IGN );
signal(SIGSTOP, sig_exit);
signal(SIGXCPU, sig_exit);
signal(SIGPROF, sig_exit);
signal(SIGWINCH, sig_exit);
signal(SIGIO, SIG_IGN );
signal(SIGPWR, sig_exit);
signal(SIGILL, sig_exit);
signal(SIGSEGV, sig_exit);
...全文
相关推荐
【已解决】Tomcat 端口被占用,杀死端口进程后 Tomcat无法启动报错
【已解决】Tomcat 重启后能使用,如图:我使用的是8082端口 然后我运行Eclipse后server报错:端口8082被占用 ;如图 之后我检查进程,发现8082端口被一个java程序占用 我把进程杀死后tomcat就变成这样了: 重启tomcat后又好了: 然后再次查询8082端口后又有一个java程序占用了。 于是我的端口一直被占用,我一直用不了。 这是我的eclipse的server信息: 经过排查发现不是项目本身出错,我先在本地访问localhost:8082,发现没有问题,然后我打开eclipse,部署了server以后我发现server显示的stopped的
socket端口复用
介绍了socket端口的复用,主要用于服务端绑定固定端口,防止端口被占用或者没有释放时绑定失败。
Linux下Socket编程的端口问题 ( Bind(): Address already in use ) PDF版
Linux Socket Bind() 成功解决socket编程中bind端口绑定的Error:Address already in use 错误。
windows解决socket连接不释放补丁包
kb2577795,kb2553549 windows 2008 r2 补丁 解决No buffer space available 早期版本漏洞
监控Socket端口程序
监控Socket端口程序,监控其收发包情况,和启动情况


