2

我想同时将多个蓝牙 LE 外围设备连接到我的 iPad 应用程序,并且我想收到特性更改通知并使用修改其特性

CBPeripheral writeValue:forCharacteristic:type:

可能吗?

我应该为不同的线程处理每个外围设备吗?

感谢您的回答!

4

1 回答 1

0

您可以为委托设置调度队列。writeValue 正在写入远程外围设备的值。如果您在同一个远程外围设备上进行多次写入,则底层协议层 (ATT) 调用将在框架 (CoreBluetooth) 级别同步。如果您正在写入不同的外围设备,那么每个外围设备都在不同的通信通道上运行。无论哪种方式,都没有线程安全问题。

但是当然,如​​果您的委托从不同的线程访问本地对象,那么如果它们不是线程安全的,您将需要保护这些对象。

于 2012-07-26T01:26:25.610 回答