AsyncSocket库 连接任何IP地址都显示连接成功的问题

最近有不少人跟我抱怨第三方库AsyncSocket 这个连接的bug

- (BOOL)connectToHost:(NSString *)hostname

onPort:(UInt16)port

withTimeout:(NSTimeInterval)timeout

error:(NSError **)errPtr

无论IP多少 都显示连接成功。

大家习惯上根据源码 把timeout 设置为-1 这就导致了这个代理方法

-(void)onSocket:(AsyncSocket *)sock willDisconnectWithError:(NSError *)err

要很久才执行显示错误。


所有大家不妨 把timeout设置成大于0的值。这个一担连接错误 就会调上面的代理方法。