title: SWIFT - What's the difference between OperationQueue.main.addOperation and DispatchQueue.main.async?
body: <p>Sometimes I must do something on the main thread and its suggested to place the code inside a <code>OperationQueue.main.addOperation</code>.</p>
  
  <p>Other times, its suggested to write the code inside <code>DispatchQueue.main.async</code>.</p>
  
  <p>What the difference between these two?</p>
  
  <p>(There's a similar question title, but the content is mismatched.)</p>