----- (let* ((msg (mailbox-receive! mbx-req terminate #f)) (last-activity (current-time)) (terminate (seconds->time (+ inactivity (time->seconds last-activity))))) ; the next message is due at this time, independent of how long we spend processing this message. (if msg ... ----- ----- (let ((msg (mailbox-receive! mbx-req terminate #f))) (let ((last-activity (current-time)) (terminate (seconds->time (+ inactivity (time->seconds last-activity))))) ; the next message is due at this time, independent of how long we spend processing this message. (if msg ... -----