我必须打开一个连接到只有数字地址而没有名字的wifi接入点的NSStream。NSStream打开一个套接字需要30-40秒。在实验中,我发现从windows机器远程登录到AP是瞬间的,但在mac上,连接同样需要30-40秒。在研究telnet时,我发现它在mac上的实现略有不同,因为它默认情况下会尝试进行名称查找。阅读telnet的手册页,我发现:当目标主机被指定为IP地址时,-N会阻止IP地址到名称的查找。
当我使用"telnet -N IP地址端口“时,我的连接是瞬间的!我怀疑是这个问题导致了我的NSStream连接延迟。有没有什么方法等同于在NSStream中设置“-N”标志?
发布于 2012-04-02 04:21:15
看起来NSHost在Cocoa Touch上不可用,所以你不能强制主机使用给定的地址,尽管我不知道这是否否定了对dns查找的需求。
这个问题自2005年以来就一直存在,尽管这可能不适用于Cocoa Touch库。在任何情况下,都没有给定的解决方案:
https://stackoverflow.com/questions/9961791
复制相似问题