Driver of combined services
This commit is contained in:
parent
0c05a400f8
commit
9cf5deadeb
|
@ -0,0 +1,17 @@
|
|||
#lang racket/base
|
||||
|
||||
(define (load-in-background description module)
|
||||
(printf "Starting ~s...\n" description)
|
||||
(thread (lambda () (dynamic-require module #f))))
|
||||
|
||||
(define (wait-for-completion threads)
|
||||
(when (pair? threads)
|
||||
(apply sync (map (lambda (t)
|
||||
(handle-evt (thread-dead-evt t)
|
||||
(lambda (dummy)
|
||||
(wait-for-completion (remove t threads)))))
|
||||
threads))))
|
||||
|
||||
(wait-for-completion
|
||||
(list (load-in-background "DNS server" "../racket-dns/driver.rkt")
|
||||
(load-in-background "SSH server" "repl-server.rkt")))
|
Loading…
Reference in New Issue