title: Swift: Choose queue for Bluetooth Central manager
body: <p>I'm working on the app that will connect with a smart device via BLE and communicate with it.</p>
  
  <p>The question is: <strong>In what queue is the best practice to handle bluetooth events?</strong> </p>
  
  <p>I've read a lot of tutorials and in all of them I found this:</p>
  
  <pre><code>centralManager = CBCentralManager(delegate: self, queue: nil)
  </code></pre>
  
  <p>They choose to handle bluetooth events in <strong>main queue</strong> (<code>queue: nil</code>), but I suppose that it's not good practice. Because it could be a lot of queries send to peripheral device from central and a lot of answers send from peripheral to central.</p>
  
  <p>I assume this might be the reason of the app working slowly and might detrimentally affect the productivity, am I right?</p>
  
  <p>Will this flood the UI update queue?</p>