[Mono-list] Threading/Synchronization and the System.Thread namespace

Miguel de Icaza miguel@ximian.com
13 Jul 2001 14:34:52 -0400

> Now, this namespace is somehow special in that it deals with threading,
> which is something that the JIT should control (at least, thread creation
> (stack and stuff), we cannot just P/Invoke pthread_create :).

Correct.  This is tied to the engine, and we will probably just do
`internalcalls' for a bunch of the support infrastructure.

> .One exception is the Monitor mechanism. I'm not sure, but I think that the
> JIT/VES needs to be aware about object monitors. May be we would need some
> coordination with the compiler/JIT/VES writers (Paolo, Miguel ??)

Yep.  We just got a sample interpreter right now.  And I am going to
be working on the code-generator generator for the JIT.  So there is
time to discuss, I do not think I will have the CGG done before a

> .Although using P/Invoke to wrap the posix thread library seems to be a good
> option, it may complicate a port to non-unix/posix OS like Windows, which
> have its own threading API. (ok, you could use MS.NET in Windows, but...)

The same rules that we are following with the GUI toolkit should be
followed here (details are on the web site): we might have different
implementations of the same API.

Depending on the system we are running, we will deploy an
implementation or another.