title: What's the C++ 11 way to fire off an asynchronous task and forget about it?
body: <p>I need something like this:</p>
  
  <pre><code>void launch_task()
  {
      std::thread([](){ run_async_task(); });
  }
  </code></pre>
  
  <p>Except thread's destructor will terminate my task. I don't need any control over the task, don't need a return value either. It just has to run its course and then the thread should terminate and C++ thread object should be disposed of. What C++ 11 facility do I need?</p>
  
  <p>I've looked at <code>std::async</code>, but couldn't find an example of usage for my case. It seems to be a pretty complicated system, and I'd need to somehow store and manipulate <code>std::future</code> or it'd become synchronous (if my understanding is correct; I didn't find a good clear article on <code>std::async</code>).</p>