Repository: https://github.com/gwkkwg/trivial-timeout
License: MIT
Quick assessment (2024-04-02)
- It works. It's just not as actively developed as some of the alternatives.
- Alternatives: Bordeaux-Threads, Portable-Threads, and CL-MUPROC.
- Timed wait on a semaphore. See lines 65–82 of with-timeout.lisp.
- SLEEP followed by an interrupt. See lines 158–170 of muproc-clozure.lisp.
- Unix signals, via setitimer(2). SBCL has this—see the manual on timers.
- ACL has both sys:with-timeout and mp:with-virtual-timeout.
- The latter is restricted to counting non-GC time towards the timeout.
Topic: concurrency