title: Grand Central Dispatch vs ThreadPool Performance in Xamarin iOS
body: <p>I've reviewed the documentation for Xamarin, and it recommends using ThreadPool for multithreaded functionality, as can be seen here:</p>
  
  <p><a href="http://docs.xamarin.com/guides/ios/application_fundamentals/threading" rel="noreferrer">http://docs.xamarin.com/guides/ios/application_fundamentals/threading</a></p>
  
  <p>However, a benchmark has been done showing that Grand Central Dispatch is much more performant than ThreadPool</p>
  
  <p><a href="http://joeengalan.wordpress.com/2012/02/26/execution-differences-between-grand-central-dispatch-and-threadpool-queueuserworkitem-in-monotouch/" rel="noreferrer">http://joeengalan.wordpress.com/2012/02/26/execution-differences-between-grand-central-dispatch-and-threadpool-queueuserworkitem-in-monotouch/</a></p>
  
  <p>Therefore my question is, why does Xamarin recommend ThreadPool over Grand Central Dispatch? Is Xamarin eventually going to tie ThreadPool into Grand Central Dispatch? When would one choose one over the other? Because if ThreadPool is going to be optimized by Xamarin, and eventually outperform Grand Central Dispatch, then I do not want to use Grand Central Dispatch.</p>