[M3devel] dynamic chose between user/kernel threads?

Olaf Wagner wagner at elegosoft.com
Sat Jan 3 01:12:27 CET 2009


An option to cm3 or a quake directive to use in the m3makefiles
would suffice in my opinion (and be a great improvement).

Olaf

Quoting Jay <jay.krell at cornell.edu>:

>
> Should the user/kernel thread chose be available:
>
>
> On the command line to a Modula-3 executable (or even an executable   
> where main is in another language, but which static or dynamic   
> Modula-3 libs are used)?
>
>
> Via a quake directive when building programs?
>
>
> You know, imagine you have a bunch of Modula-3 programs and some but  
>  not all use a very large number of threads and benefit from   
> userthreads.
>
>
> Currently the chose is locked into m3core when it is built.
>
>
> I understand (and anyone who likes the idea should understand) this   
> is not easy to achieve.
> Well, at the very least, it is a tedious transform of the code, not   
> anything hard to understand, just not a small physical change. The   
> choice also has to be communicated very early in   
> "startup/initialization", since e.g. the garbage collector creates a  
>  thread for itself during "startup/initialization" -- letting Main's  
>  body call Scheduler.SetThreadImplementation(enum [UserThreads,   
> KernelThreads]) would not likely work, and not be provided.
>
>
>  - Jay



-- 
Olaf Wagner -- elego Software Solutions GmbH
                Gustav-Meyer-Allee 25 / Gebäude 12, 13355 Berlin, Germany
phone: +49 30 23 45 86 96  mobile: +49 177 2345 869  fax: +49 30 23 45 86 95
    http://www.elegosoft.com | Geschäftsführer: Olaf Wagner | Sitz: Berlin
Handelregister: Amtsgericht Charlottenburg HRB 77719 | USt-IdNr: DE163214194




More information about the M3devel mailing list