我正在使用NSNetService通过Bonjour进行广播。但是当我想要停止它时,我会使用[netService stop],其中netService是我的NSNetService。它不会停止,它会被调用,但不会停止。netServiceDidStop没有被调用,所以我想我不能阻止它。顺便说一句,这个项目使用自动引用计数(ARC),我怀疑这是这个问题的原因。什么是wromg?
发布于 2012-04-25 03:03:07
你搞清楚了吗?我也看到了同样的事情。但是SimpleNetworking的示例代码没有展示这一点。在我的例子中,我只是在测试发布和停止Bonjour产品。我还没有打开任何流,这可能就是问题所在。更完整地说,我在我的Mac上运行了BonjourBrowser.app,当我在我的iOS设备上启动我的NSNetService时,Bonjour注册显示在BonjourBrowser中。当我停止NSNetService并将其从run循环中移除时,BonjourBrowser仍然显示注册,即使使用了该应用程序的“重新加载服务”按钮。相比之下,一旦停止服务器服务,SimpleNetworking就会从BonjourBrowser中消失。而且,有趣的是,SimpleNetworking不会从run循环中删除服务(至少不会显式删除)。
我怀疑我的TimeCapsule正在执行Bonjour睡眠代理,但我重启了它,BonjourBrowser从未显示我的服务消失。
https://stackoverflow.com/questions/8717428
复制相似问题