I tried to understand where the issue is located. In :lparallel file lparallel-20160825-git/src/thread-util.lisp there is a stanza which tries to check for the implementation of the :timeout capability
> ;;; Check for timeout parameter in bordeaux-threads:condition-wait. > (eval-when (:compile-toplevel :execute) > ;; use special to defeat compiler analysis > (defparameter *condition-wait* #'bordeaux-threads:condition-wait) > > (flet ((has-condition-wait-timeout-p () > ... I tried to minimise this to a small standalone piece which can be used to examine the issue: (ql:quickload :bordeaux-threads) (let ((lock (bordeaux-threads:make-lock)) (cvar (bordeaux-threads:make-condition-variable))) (bordeaux-threads:with-lock-held (lock) (bordeaux-threads:condition-wait cvar lock :timeout 0.001))) I think the :timeout doesn't seem to work properly and thus the condition-wait waits forever. Can you help me to understand this better and to work around it ? Regards Robert Larice Robert Larice <robert.lar...@t-online.de> writes: > Hello, > > can you provide me some hints for the following problem ? > > I've compiled ecl from git on a debian stretch machine. > Then I've tried to compile the "qt" example, > which did hang when loading "lparallel" > So I started "ecl" from a shell, > and did execute > (ql:quickload :lparallel) > which presents me: > > To load "lparallel": > > Load 1 ASDF system: > > lparallel > > ; Loading "lparallel" > then the process fell silent. > "top" doesn't show "ecl" to consume cpu cycles. > Its waiting for something and doesn't proceed. > > Regards, > Robert Larice