[Mono-list] Threading

Ian McCullough ipmccmono@hotmail.com
Mon, 13 May 2002 10:25:44 -0400

> OK. That does what I expected ... except that with csc it does it without
> the Join() everytime ...

Yeah -- I tested that before I posted my reply, and I couldn't get it to
fail in the same way, however I do think that this behavior is still "by
design" in that even though csc starts the thread in time, that it is not
guaranteed to do so.  I suspect that if you loaded down your windows machine
to "near-death" levels, that the thread spawning process might take enough
time for the main thread to exit before the new thread got to its
Console.WriteLine statement.  The bottom line and the issue at the heart of
this is that once you start a thread, there are no guarantees whatsoever
about execution order or synchronization unless you specifically put those
guarantees in there using synchronization devices.