In the Apple documentation, it says:
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.
Now, this should be obvious, but I'll ask for confirmation anyway.
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.
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?