24、在线游戏:Bonjour与网络流

在线游戏: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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值