Newsgroups: comp.lang.lisp
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!scramble.lm.com!news.math.psu.edu!news3.cac.psu.edu!howland.erols.net!www.nntp.primenet.com!nntp.primenet.com!news.sgi.com!news.msfc.nasa.gov!newsfeed.internetmci.com!in2.uu.net!demos!pluscom!usenet
From: moroz@inist.ru (Oleg Moroz)
Subject: Re: Multithreaded thrills
X-Newsreader: Forte Agent .99d/32.182
Sender: usenet@news.rinet.ru (Superuser)
Nntp-Posting-Host: inist.cronyx.ru
Organization: A/O Plus & Cronyx Ltd. Internet Node
Message-ID: <3235db13.1554490@news-win.rinet.ru>
References: <323203e1.3157401@news-win.rinet.ru> <512dad$b4i@dublin.bitwise.net>
Date: Tue, 10 Sep 1996 21:25:23 GMT
Lines: 17

On Tue, 10 Sep 1996 00:40:25 GMT, jbell@capecod.net (Janet Bell) wrote:

>To answer particular questions, symbols are usually rebound when a
>thread takes control, so a mutex is unnecessary. 

Sorry, but I don't understand this one. Do you mean that every thread has its
own global and special variables ? How do they cooperate then ? And how should
the implementation manage this rebinding (a thread switch might occur at any
time) ? Keeping the global environment in TLS ?

I really have no experience with multi-threaded Lisp implementations, so I can
only guess here. I'm used (from multi-threaded experience with C, C++ and other
non-functioinal languages) to the POV that threads are light-weight processes
running in the same address space, i.e. sharing the same memory and data
structures, except some kind of thread-local storage. 

Oleg
