title: iOS programming autorelease pool
body: <p>In the <a href="https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmAutoreleasePools.html" rel="nofollow">Apple documentation</a>, it says:</p>
  
  <blockquote>
    <p>The AppKit and UIKit frameworks process each event-loop iteration
    (such as a mouse down event or a tap) within an autorelease pool
    block. Therefore you typically do not have to create an autorelease
    pool block yourself, or even see the code that is used to create one.</p>
  </blockquote>
  
  <p>Now, this should be obvious, but I'll ask for confirmation anyway.</p>
  
  <p>If I'm developing for what would eventually be a background process (via Grand Central Dispatch), but for simplicity I first just put it in viewDidLoad of the very first loading view so that my view actually won't be shown on the screen until all that (say) 2 minutes of processing is done, then during this two minutes all that default autorelease pool is never freed because it has not gone through the event loop-iteration yet, right? It would be just plain insane to hear a no, but I'm stuck in this growing memory problem, so I'm going to ask for a confirmation and hope for a good news.</p>
  
  <p>If so, I should put my own autorelease block(s). I would still need the autorelease blocks if the processing is done in a background process via GCD, right? </p>