title: Garbage Collector runs every second start of my app
body: <p>I have a strange behaviour. My App starts very fast when first started. 
  When starting the second time (closed the app before and checked with taskmanager that it is no longer running ) it runs very slow. 3rd time fast, 4th time slow. every second start runs slow. Its because my Garbage Collector starts working the second time, but I don't know why. Should a start of an App behaves always the same ?</p>
  
  <p>My Step which is very slow is my decodeStream - Statement. I have about 100 small pictures (5 kbytes - 15kbytes) I want to load.</p>
  
  <pre><code>Log.v("DEBUG DRAWEVENT 71","load " + e.sEventTitle);
  bm = BitmapFactory.decodeStream(new FileInputStream(fImage), null, o2);
  Log.v("DEBUG DRAWEVENT 72","end load " + e.sEventTitle);
  </code></pre>
  
  <p>LogCat that shows Garbage-Collection activities ( Only every 2. start )</p>
  
  <pre><code>01-04 16:16:03.500: V/DEBUG DRAWEVENT 71(20427): load Title
  01-04 16:16:03.641: D/dalvikvm(20427): GC_FOR_ALLOC freed 17K, 33% free 28448K/41924K, paused 138ms, total 138ms
  01-04 16:16:03.641: I/dalvikvm-heap(20427): Grow heap (frag case) to 27.842MB for 34612-byte allocation
  01-04 16:16:03.771: D/dalvikvm(20427): GC_FOR_ALLOC freed 0K, 33% free 28481K/41960K, paused 138ms, total 138ms
  01-04 16:16:03.781: V/DEBUG DRAWEVENT 72(20427): end load Title
  </code></pre>
  
  <p>I am on API Level 12.</p>
  
  <p>Any hints ?</p>
  
  <p>New analysing facts : After first start the App runns still under cached processes (35MB). Cached Processes can be shown under settings->apps->Running->Show Cached Processes.
  When stopping this process my second start runns fast too.</p>
  
  <p>So the next question. How to prevent an app to be cached ?</p>