我计划使用Apple的DNSServiceQueryRecord来解析SRV记录。我看到从SRV查找返回的每个记录调用一次传递给此方法的回调。我怎么知道查询已经完成并且所有记录都已被退回?
Apple的文档供您参考。
答案 0 :(得分:1)
我想指出方法" DNSServiceProcessResult"处理DNS结果是阻止。我使用select()来查看套接字中是否收到数据以调用DNSServiceProcessResult。这使得该方法解除阻塞。我检查套接字中是否有数据2秒,如果我没有收到任何结果,我取消查询。