在线游戏:Bonjour与网络流
在网络应用开发中,实现设备间的发现与通信是非常重要的。Bonjour协议和网络流技术为此提供了有效的解决方案。本文将详细介绍Bonjour协议的使用,包括服务的发布、搜索、解析,以及网络流的操作,如打开、接收和发送数据。
1. 停止监听器
当不再需要监听新连接时,需要使套接字无效并释放它。以下是停止CFSocket的代码:
if (socket) {
CFSocketInvalidate(socket);
CFRelease(socket);
socket = NULL;
}
2. Bonjour协议简介
Bonjour(也称为Zeroconf)是一种专门设计用于让设备在网络上相互发现的协议。例如,新打印机连接到AirPort基站后,Mac能自动发现它;在Finder中,网络上的其他Mac会自动显示在“共享”标题下,这些都是Bonjour的应用场景。
3. 创建用于发布的服务
要使用Bonjour在网络上发布服务,需要创建 NSNetService 实例,需要提供以下四方面信息:
- Domain(域) :通常指定为空字符串。虽然 NSNetService 文档提到如果只支持本地连接可传递 @"local." ,但为避免与未来Mac OS X版本不兼容,应始终传递空字符串。
- Service ty
超级会员免费看
订阅专栏 解锁全文
39

被折叠的 条评论
为什么被折叠?



