我必須打開一個NSStream到只有數字地址,而不是名稱的wifi接入點。它需要NSStream 30-40秒來打開一個套接字。在實驗中,我發現遠程登錄到一個窗口框的AP是瞬時的,但在Mac上,連接相同的30-40秒。在研究telnet時,我發現這個實現在mac上有點不同,因爲默認情況下會嘗試進行名稱查找。閱讀手冊頁的telnet,我發現: - 當目標主機作爲IP地址給出時,阻止IP地址進行名稱查找。NSStream - 反向DNS查找錯誤
當我使用「telnet -N IP地址端口」,我的連接瞬間!我懷疑這個問題導致我的NSStream連接延遲。有什麼辦法可以做到相當於在NSStream中設置「-N」標誌嗎?
在我看來,就好像使用CFSocket API會得到解決此問題。 – JeremyP 2012-04-02 15:06:45
我搞砸了這個和CFSocket(在這種情況下通過SimpleSocket)確實工作 – nflacco 2012-04-02 22:19:27