title: View controller dealloc not called when using NSNotificationCenter code block method with ARC
body: <p>When I use <code>-addObserverForName: object: queue: usingBlock:</code> for <code>NSNotificationCenter</code> in the <code>-viewDidLoad:</code> method of my view controller, the <code>-dealloc</code> method ends up not being called.  </p>
  
  <p>(When I remove <code>-addObserverForName: object: queue: usingBlock:</code>, <code>-dealloc</code> is called again.)</p>
  
  <p>Using <code>-addObserver: selector: name: object:</code> doesn't seem to have this problem.  What am I doing wrong?  (My project is using ARC.)</p>
  
  <p>Below is an example of my implementation, in case I'm doing something wrong here:</p>
  
  <pre><code>[[NSNotificationCenter defaultCenter] addObserverForName:@"Update result"
                                                    object:nil
                                                     queue:nil
                                                usingBlock:^(NSNotification *note) {
                                                    updateResult = YES;
                                                }];
  </code></pre>
  
  <p>Thanks in advance for any help.</p>
  
  <p>I've tried adding the following (to no avail):</p>
  
  <pre><code>- (void)viewWillDisappear:(BOOL)animated
  {
      [super viewWillDisappear:animated];
  
      if ([self isMovingFromParentViewController]) {
          [[NSNotificationCenter defaultCenter] removeObserver:self];
      }
  }
  </code></pre>