发信人: Lark_Wang@bbs.ustc.edu.cn (云中雀), 信区: cnunix
标 题: Re: Client_Server 程序中的端口问题.
发信站: 中国科大BBS站 (Sat Nov 8 10:30:05 1997)
转信站: Lilac!ustcnews!ustcnews!ustcbbs
> ==> Simon_Lei(雨夜狂雷) 说道:
> 在做一个 Client-Server 结构的程序时,
> 要用到端口号. 在调试阶段, Server 程序
> 常常是被强行 kill 掉的. 此时如果在
> Server 程序中添加一点点的调试信息, 再
> 重新编译执行时, 就会发现该端口号被占用,
> 而造成 Server 程序执行出错. 只好修改端
> 口号, 重新再编译执行.请问诸位大侠, 有没
> 有一种办法来将该端口的程序去掉? 或者用
> 其他方法解决?
首先用signal()函数截取SIGHUP信号,
void cleanup(int num)
{
close_all_opened_sockets();
exit(0);
}
main()
{
....
signal(SIGHUP,cleanup);
....
}
然后用 kill -HUP pid 来杀死Server程序.
--
云中雀
※ 来源: 中国科大BBS站 [bbs.ustc.edu.cn]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:1.993毫秒