On Apr 11, 2020, at 6:05 AM, Jörg F. Wittenberger <Joerg.Wittenberger@softeyes.net> wrote:
On Fri, 10 Apr 2020 16:16:23 -0400 Marc Feeley <feeley@iro.umontreal.ca> wrote:
On Apr 10, 2020, at 1:59 PM, Jörg F. Wittenberger <Joerg.Wittenberger@softeyes.net> wrote:
Background:
Since when I'm using this ##open-predefined and have on my list to ask why this seems not to integrate into gambit's threading as good as I had hoped for. ... Then, when you want to wait for input to be available you can call ##wait-input-port with that port. This is the definition in lib/_io.scm:
(define-prim (##wait-input-port port)
This is what I'm using so far.
This is fully integrated with the thread system, so it only blocks the calling thread. Note also that you can use input-port-timeout-set! if you want to block for a limited time.
My observation (on Linux) was that ##wait-input-port did not block the current thread at all. Thus gambit was sitting in a tight loop until data arrives.
Jörg
It should work. Can you show me a minimal version of your code? Marc