如何防止程序崩溃时网络端口保持打开状态

Joe*_*ool 4 c crash network-programming ports

我上学期参加了计算机网络,并在linux(使用gcc)中为我的项目做了一些C编程.我遇到的一件非常繁琐的事情是,如果我的程序崩溃或停滞(然后我必须按Ctrl + C来杀死它),网络端口仍然会打开一分钟左右.因此,如果我想立即再次运行该程序,我将首先进入头文件,更改端口,重新制作程序,然后最终运行它.显然,这非常繁琐非常繁琐.

是否有任何方法可以在进程被终止时立即释放端口?要么通过linux中的某些设置,要么是我的程序的makefile,甚至是C中的编程?

编辑:我指的是编写服务器并选择一个特定端口来托管程序.

Cog*_*gsy 11

SO_REUSEADDR在套接字上设置选项.

int yes = 1;
setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR, &yes, sizeof(int));
Run Code Online (Sandbox Code Playgroud)

Beej的网络编程指南.