"Basil L. Contovounesios" writes: Hi Basil, >> If you want a process to communicate in a given thread, you must call >> `set-process-thread'. See the elisp manual. > > Thanks, this is the first thing I tried when earlier experiments started > to hang. I tried both the following redundant but explicit call: Well, I've played with your example. As Eli said, `set-process-thread' is not needed here. With your original example, I could reproduce the problem, However, if I call emacs -l test.el -f test-threads the problem does NOT happen. My .emacs is quite long, so I didn't bisect in order to find out what makes the difference. I have changed your example a little bit wrt `thread-join', see appended. This version runs w/o any problem even if emacs is called with -Q. Maybe this helps you to debug further. Best regards, Michael.