Tracked it. There's something funky going on with poll-or-spawn, right here:
https://github.com/plt/racket/blob/master/collects/racket/port.rkt#L1122-L1125 I don't quite understand what's going on here yet, but the highlighted thread is always blocking on nack, and never gets killed. It's this thread that's accumulating in the loop of: #lang racket (define ip (open-input-string "hello world")) (define evt (peek-bytes-evt 1 0 #f ip)) (let loop () (sync (handle-evt evt (lambda (res) (loop))))) ____________________ Racket Users list: http://lists.racket-lang.org/users