[Ecls-list] Multithreading

Juan Jose Garcia-Ripoll worm at arrakis.es
Tue Nov 18 03:28:06 UTC 2003


Hi,

I have committed a lot of new code to CVS. The amount of it will make it 
pointless to release patch files in the near future, so those willing to have 
a look at the new things will have to cope with SourceForge's delay in 
anonymous CVS.

The new things

	+ Version 6.2 of the garbage collector

	+ The variables of the lisp environment have been grouped in
	  two structures: cl_env and cl_core. The first one is thread-local
	  the second one is common to a single process.

	+ Preliminary support for POSIX threads can be activated using
	  the configuration flag --enable-threads.

Beware that

	+ Currently ECL can do no more than launching a thread, killing it
	  and listing all threads.

	+ Threads have a huge overhead on things like garbage collector,
	  special variables, etc.

	+ No routines for locking have been so far implemented.

	+ There are still many issues left, and many places in ECL have to
	  be checked for thread safety.

On the other hand, people not using threads should see no big changes, and 
should indeed get a smaller ECL.

So, basically, the skeleton is there, but we still have to cover it with 
flesh.

Regards

Juanjo





More information about the ecl-devel mailing list