title: Blocked QFuture.result() or QFutureWatcher.waitForFinished();
body: <p>So I have been using QtConcurrent::run for some time and its fantastic. But now I need the function to return an object. Therefore I use the pseudo code</p>
  
  <pre><code>QFutureWatcher&lt;MyObject&gt; fw;
  QFuture&lt;MyObject&gt; t1 = QtConcurrent::run(&amp;thOb, &amp;MythreadObjFunc::getList, ConSettings, form, query);
  fw.setFuture(t1);
  // Both .results() and waitForFinished() block
  fw.waitForFinished();
  MyObject entries = t1.result();
  </code></pre>
  
  <p>Then I iterate through the myObject. The issue is that this is blocking e.g. my main GUI is not responsive. And this was the whole reason I started using QtConcurrent::run</p>
  
  <p>Therefore, what is the recommended way to have my GUI execute a QtConcurrent::run and get the object back but not block? I thought of signals and slots where the signal would be from the QtConcurrent::run but this would mean that it would be from a different thread and I read thats not recommended.</p>
  
  <p>Thanks for your time.</p>