AIX下多进程下不同线程同时绑定到一个端口导致问题
先谢过各位, 2个问题。
本程序为多进程+多线程(一个tuxedo服务程序),环境:aix 6.1 + tuxedo 。
1、问题为:多个进程下的线程同时绑定1个端口成功了(非系统自动选择,人为在一个端口范围内选择, 方法:绑定不成功,再选择下一个)。没有设置端口重用,只设置了SO_REUSEADDR。 不应该是第一个绑定成功后下一个就不能再绑定了么?
2、一个线程close掉socket后,可以 立即被别的线程bind、listen成功,但对方不能connect(客户端该函数的返回码为-1,但errno却为 0,已经加上宏了:-D_THREAD_SAFE),如果在listen后sleep 15秒,对方就可connect了,这又是怎么回事呢。