我写了一个简单的socket TCP 服务器程序,最初在2.6内核的Red Hat Enterprise 4 下调试,一切正常。
后来在2.4内核的Red Hat Enterprise 3下调试,发现中止程序后,再次执行程序,端口总是无法绑定,要等大约20秒左右才能重新绑定端口,而在2.6内核下没有发现这个问题。
因此怀疑是不同内核对于socket绑定端口的不同表现行为,目前也没看见相关的资料。
建议在2.4内核下编写TCP 服务器程序,注意将端口设置为允许重用。
后来在2.4内核的Red Hat Enterprise 3下调试,发现中止程序后,再次执行程序,端口总是无法绑定,要等大约20秒左右才能重新绑定端口,而在2.6内核下没有发现这个问题。
因此怀疑是不同内核对于socket绑定端口的不同表现行为,目前也没看见相关的资料。
建议在2.4内核下编写TCP 服务器程序,注意将端口设置为允许重用。