I'm working on the app that will connect with a smart device via BLE and communicate with it.
The question is: In what queue is the best practice to handle bluetooth events?
I've read a lot of tutorials and in all of them I found this:
centralManager = CBCentralManager(delegate: self, queue: nil)
I am using dispatch_get_global_queue(QOS_CLASS_BACKGROUND, 0) for the CBCentralManager for some time in my Bluetooth projects and it is working flawlessly.
All the delegate methods will be delivered to the queue you specify. If you do some very light operations on these methods, I guess you could keep the main queue. But it is better to use a background queue.