[Mono-dev] [PATCH] TcpChannel hang on Windows.

Bill Holmes billholmes54 at gmail.com
Wed Dec 17 18:17:07 EST 2008


Kornél,

I tested your case and it appears to work fine with my changes.  I
believe that this is because I check for the ThreadState_StopRequested
state.  I do not check for ThreadState_AbortRequested.  That is
intentional because that is the behavior I observed with MS .net.
Also if I understand it correctly mono_thread_manage wait on all non
background threads to complete before it sets the
ThreadState_StopRequested on the background threads only and waits for
those.

I also toggled the background flag in you example to ensure the two
runtimes behave the same.

Thanks so much for your review!
-bill

For those interested this is the case I am attempting to fix...

static void Main (string[] args)
{
	TcpChannel tc = new TcpChannel (0);
}


More information about the Mono-devel-list mailing list