title: How to slow down a method execution without freezing the thread/application?
body: <p>Everything is in the title :)</p>
  
  <p>Why I need this :</p>
  
  <p>I've created a small playable sudoku game in C++ with Qt. I've made a classic backtracking method to resolve it. The user can see the resolution progress in real-time. I've put a slider allowing the user to adjust the resolution speed.</p>
  
  <p>That's what I've put at the begging of the resolution method to slow down the process :</p>
  
  <pre><code> sleep_for(milliseconds(delay)); //delay is a toggleable static variable
  </code></pre>
  
  <p>BUT since the user launch the resolution, he can't change the speed(delay) because the application is sleeping most of the time.</p>
  
  <p>Any other way to slow down the process ?</p>
  
  <p>ps : please excuse my rough english :/</p>