title: Wait some seconds without blocking UI execution
body: <p>I would like to wait some seconds between two instruction, but WITHOUT blocking the execution.</p>
  
  <p>For example, <code>Thread.Sleep(2000)</code> it is not good, because it blocks execution.</p>
  
  <p>The idea is that I call a method and then I wait X seconds (20 for example) listening for an event coming. At the end of the 20 seconds I should do some operation depending on what happened in the 20 seconds.</p>