creating delayed reactor

This commit is contained in:
2026-04-21 15:07:59 +02:00
parent 472c70660c
commit e44f51a772
2 changed files with 27 additions and 2 deletions

View File

@@ -1025,8 +1025,9 @@
;; delayed reactor
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define/contract (webview-delayed-reactor seconds value-callback)
(-> number? procedure? procedure?)
(define/contract (webview-delayed-reactor seconds value-callback
#:update [update-callback (λ (val) #t)])
(->* (number? procedure?) (#:update procedure?) procedure?)
(let ((value-set-at -1)
(value 'none)
(wait-thread #f)
@@ -1035,6 +1036,7 @@
(λ (val)
(set! value val)
(set! value-set-at (current-milliseconds))
(update-callback val)
(when (eq? wait-thread #f)
(set! wait-thread (thread (λ ()
(let loop ((vsa value-set-at))