This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

status on threads support


I have difficulties in determining the current status of guiles thread
support.

I am not much af of an expert on threads, so bear with me, if my
questions are bleeding obvious.

We are going to build some software that accepts calls from "above"
(clients making requests) and from "below" (the hardware reporting on
events), with some (large) structure being maintained in the middle.

The obvious solution is to have multiple threads, each listening in a
particular "direction", waking up when there is something to do, with
the "below" thread having a higher priority than the "above" one.

Java is being considered, but I would really prefer using something
more advanced, ie. scheme, being the die-hard lisp fanatic that I am).

So, the question, can I implement such a semi-prioritized-preemptive
threads based thingy in guile (or some other implementation of
scheme). I do not think it is a requirement that the system is
completely thread-safe in all corners, but the below thread must be
able to wake up frequently enough to be able to process events at
something like full speed.

I do not mind hacking at the sources nor to control some of it from
raw C, but I need to know whether there is hope to achieve this with a
reasonable amout of ressources.


---------------------------+--------------------------------------------------
Christian Lynbech          | Telebit Communications A/S                       
Fax:   +45 8628 8186       | Fabrik 11, DK-8260 Viby J
Phone: +45 8628 8177 + 28  | email: chl@tbit.dk --- URL: http://www.telebit.dk
---------------------------+--------------------------------------------------
Hit the philistines three times over the head with the Elisp reference manual.
                                        - petonic@hal.com (Michael A. Petonic)