I just upgraded to 2.10 and am getting strange behavior that I wasn&#39;t seeing in 2.8.1<div><br></div><div>I call VerifyAccess in my code which is the method in the Dispatcher class that will compare the calling thread with the thread that the dispatcher was created on, if they differ it will throw an exception. In 2.8.1 it seemed that the Dispatcher object was always null so I never called these methods. </div>
<div><br></div><div>In 2.10 it seems the Dispatcher is no longer null so I am making it into my calls to VerifyAccess and it is throwing an exception:</div><div><br></div><div>System.InvalidOperationException: &quot;The calling thread is not the same as the creation thread&quot;</div>
<div><br></div><div><br></div><div>a few things that are strange about this:</div><div><br></div><div><div>Prior to calling verify access I am doing some sanity checks </div><div>1. Dispatcher is not null</div><div>2. It&#39;s hash code matches the Thread.CurrentThreads hash code</div>
<div>3. Dispatcher.Thread == Thread.CurrentThread evaluates true</div></div><div><br></div><div>4. Looking at the code from the 2.10 branch for dispatcher this doesn&#39;t appear to be the error text that should be thrown so I assume something else is going on here.</div>
<div><br></div><div><br></div><div>That seems to tell me that they are in fact the same thread and the exception should NOT be thrown. Since the error message doesn&#39;t seem correct I assume something else is going on here that I don&#39;t understand.</div>
<div><br></div><div><br></div><div>Any ideas?</div><div><br></div><div><br></div><div><br><div><br>-- <br>Brad Cunningham<br>Microsoft MVP: C#<br><br><a href="http://blog.bradcunningham.net">http://blog.bradcunningham.net</a><br>

</div></div>