title: When to use __block keyword on object references with ARC
body: <p>I understand that the <code>__block</code> storage type is needed on scalar variables for the block to see updates to them, but when is it needed on objects?  I believe <code>__weak</code> should be used when capturing a self reference to be used within the block, but I don't see when it would be necessary to actually use the <code>__block</code> storage type for ordinary objects.</p>