Vsevolod <vselo...@gmail.com> writes: > On Apr 27, 11:31 pm, David Bolen <db3l....@gmail.com> wrote: >> I'm curious - do you know what happens if threading is implemented as >> a native OS thread and it's stuck in an I/O operation that is blocked? >> How does the Lisp interpreter/runtime gain control again in order to >> execute the specified function? I guess on many POSIX-ish >> environments, internally generating a SIGALRM to interrupt a system >> operation might work, but it would likely have portability problems. > > We're arguing to the old argument, who knows better, what the > programmer wants: language implementor or the programmer himself. > AFAIK, Python community is on former side, while Lisp one -- on the > later. As always, there's no right answer.
Note I wasn't trying to argue anything, I was actually interested in how the behavior is handled in Lisp? Do you know how the Lisp implementation of threads you spoke about handles this case? E.g., can the Lisp implementation you are familiar with actually kill such a thread blocked on an arbitrary external system or library call? -- David -- http://mail.python.org/mailman/listinfo/python-list