在我们的 AIX 6.1 机器上运行某种自动化测试时,我们面临的问题是,虽然相应的进程已经终止,但端口似乎正在被使用。
例如,如果我们使用端口 9999 终止挂起的应用程序,我们将获得以下结果:
user@aix:~/EP$ netstat -Aan | grep 9999
…
f1000700149ec3b0 tcp 0 0 *.9999 *.* LISTEN
…
user@aix:~/EP$ rmsock f1000700149ec3b0 tcpcb
Wait for exiting processes to be cleaned up before removing the socket
目前,我们只能通过重新启动机器来从该状态恢复。
我们已经尝试设置 SO_REUSEADDR 但仍然收到这种奇怪的错误。
该错误不是特定于应用程序的 - 它发生在不同的应用程序中。
user@aix:/etc$ oslevel -s
6100-04-01-0944