title: KVO firing when value assigned is not different
body: <p>If I have a property as follows</p>
  
  <pre><code>@property(assign, nonatomic) NSUInteger myValue;
  </code></pre>
  
  <p>And assign a property to it</p>
  
  <pre><code>self.myValue = 2;
  </code></pre>
  
  <p>KVO will fire as expected. If, later on, I then assign the same value to it</p>
  
  <pre><code>self.myValue = 2;
  </code></pre>
  
  <p>KVO will fire again. I had presumed that KVO in Objective-C would not fire if the value being assigned was not different. It appears that I am incorrect.</p>
  
  <p>Is there a way to force this default behaviour, i.e. disable the KVO notifications firing every time a value is assigned? I can create my own accessors, but this could be quite a lot of work if there are a lot of properties that I want to change...</p>
  
  <p>Thanks for any replies.</p>