[Bordeaux-threads-devel] CONDITION-WAIT with timeout

James M. Lawrence llmjjmll at gmail.com
Sat Sep 14 16:07:52 UTC 2013


I have added a :timeout option to condition-wait.

git pull https://github.com/lmj/bordeaux-threads

Tested on ABCL, Allegro, CLISP, Clozure, ECL,  LispWorks 6.1, and SBCL.

I don't have SCL, but if the documentation is correct then it should be OK.


On Tue, Apr 17, 2012 at 8:20 PM, Thomas Munro <munro at ip9.org> wrote:
> On 17 April 2012 15:11, Stelian Ionescu <sionescu at cddr.org> wrote:
>> I'd like to, but what do we do for those implementations that don't
>> support timeouts ?
>
> I went through the existing implementations and googled for
> timeout variants of the mechanisms being used and found these:
>
> ABCL: (threads:object-wait condition timeout)
> Allegro: ?
> Clisp: (mt:exemption exemption mutex :timeout timeout)
> Clozure: (ccl:timed-wait-on-semaphore semaphore timeout)
> CMUCL: ?
> Corman: ?
> ECL: (mp:condition-variable-timedwait condition mutex timeout)
> LispWorks simulated: ?
> LispWorks 6: (mp:condition-variable-wait condition mutex :timeout timeout)
> MCL: ?
> SBCL: (sb-thread:condition-wait condition mutex :timeout timeout)
> SCL: (thread:cond-var-timedwait condition mutex timeout)
>
> I couldn't immediately grok those with question marks, but I
> suspect it's possible for most of them though.  I hope someone
> who knows those systems can comment.
>
> I don't have any suggestion on what to do if there is no
> implementation apart from the obvious and unsatisfactory 'raise
> an error at runtime'.
>
> _______________________________________________
> Bordeaux-threads-devel mailing list
> Bordeaux-threads-devel at common-lisp.net
> http://lists.common-lisp.net/cgi-bin/mailman/listinfo/bordeaux-threads-devel


More information about the bordeaux-threads-devel mailing list