Actively reclaims unmanaged resources that this instance uses.(Inherited from CommonObject.)
For derived class implementers.(Overrides CommonObjectDispose(Boolean).)
This method is called with argument true when class user calls Dispose(), while with argument false when the Garbage Collector invokes the finalizer, or Finalize() method.
You must reclaim all used unmanaged resources in both cases, and can use this chance to call Dispose on disposable fields if the argument is true.
Also, you must call the base virtual method within your overriding method.