如何清楚linux系统中以退出程序的socket连接?
程序退出时,没有正常关闭socket,linux系统会保持socket的连接状态很长时间,这时在运行同样的程序,就会服务端报错“Address   already   is   use”或客户端“Connection   refused”。这样测试起来很不方便,有没有办法可以让linux系统的这种状态立即消失?
------解决方案--------------------// set socket 
   int opt = 1,;; 
   unsigned int optlen = sizeof(opt); 
   if(setsockopt(m_sockfd, SOL_SOCKET, SO_REUSEADDR, &opt, optlen) == -1) 
     { 
       perror( "setsockopt reuseaddr "); 
       return -1; 
     } 
   else 
     { 
       printf( "Setsockopt reuseaddr... OK\n "); 
     }