title: How to implement a "fire-and-forget" async call in Android?
body: <p>I am reviewing/cleaning up some Android code. The code did some "asynchronous" network and data operations using this pattern:</p>
  
  <pre><code>new Thread() { public void run() { { ... runOnUiThread( { .. } ) }
  </code></pre>
  
  <p>A lot. With all the ugly consequences (no error checks, Sleeps, boolean <code>finish</code> variables...).</p>
  
  <p>Till now, I ended up using (few) <code>AsyncTasks</code> and (more) <code>Loaders</code> as replacements.</p>
  
  <p>Now I have stumbled upon a couple of "fire-and-forget" network communications: the code (currently, a Thread, as always) calls a web service posting some data.
  I do not need to know if the data was received, and I do not need to know if there was any error. </p>
  
  <p>Which is the best way of doing this? A <code>Runnable</code> or <code>AsyncTask</code> (static nested class, so I do not "leak" a reference to "this" activity?) </p>
  
  <p>Or is there something better (more "lightweight" and cleaner?)</p>