title: Is there any justification not to ALWAYS use AtomicInteger as data members?
body: <p>In a multi-threaded environment like Android, where a simple <code>int</code> variable may be manipulated by multiple threads, are there circumstances in which it is still justified to use an <code>int</code> as a data member?</p>
  
  <p>An <code>int</code> as a local variable, limited to the scope of the method that has exclusive access to it (and thus start &amp; finish of modifying it is always in the same thread), makes perfect sense performance-wise.</p>
  
  <p>But as a data member, even if wrapped by an accessor, it can run into the well known concurrent interleaved modification problem.</p>
  
  <p>So it looks like to "play it safe" one could just use <code>AtomicInteger</code> across the board. But this seems awfully inefficient.</p>
  
  <p>Can you bring an example of thread-safe <code>int</code> data member usage?</p>