title: What's the best way to release objective-c properties?
body: <p>I'm new to memory-management, and am reading different things about how to best release properties.  </p>
  
  <p>If I have:<br>
  in .h:  </p>
  
  <pre><code>@property(retain) NSString *myStr;
  </code></pre>
  
  <p>and in .m:  </p>
  
  <pre><code>@synthesize myStr = _iVarStr;
  </code></pre>
  
  <p>Should my dealloc have:   </p>
  
  <pre><code>[_iVarStr release];  
  </code></pre>
  
  <p>or  </p>
  
  <pre><code>self.myStr = nil;   
  </code></pre>
  
  <p>or something else?</p>
  
  <p>Thanks!</p>