10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
(require-extension (srfi 18) extras tcp s11n rpc)
(import (prefix rpc rpc:))
(use sqlite3 srfi-1 posix regex regex-case srfi-69 hostinfo md5 message-digest)
(import (prefix sqlite3 sqlite3:))
(declare (unit server))
(declare (uses common))
(declare (uses db))
(declare (uses tests))
(declare (uses tasks)) ;; tasks are where stuff is maintained about what is running.
(include "common_records.scm")
|
|
|
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
(require-extension (srfi 18) extras tcp s11n rpc)
(import (prefix rpc rpc:))
(use sqlite3 srfi-1 posix regex regex-case srfi-69 hostinfo md5 message-digest)
(import (prefix sqlite3 sqlite3:))
(declare (unit rpc-transport))
(declare (uses common))
(declare (uses db))
(declare (uses tests))
(declare (uses tasks)) ;; tasks are where stuff is maintained about what is running.
(include "common_records.scm")
|
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
|
(db:updater)
(thread-start! th1)
;; (debug:print 0 "Server started on port " (rpc:default-server-port) "...")
;; (thread-start! th2)
;; (thread-join! th2)
;; return th2 for the calling process to do a join with
th1
)))) ;; rpc:server)))
(define (rpc-transport:keep-running db host:port)
;; if none running or if > 20 seconds since
;; server last used then start shutdown
(let loop ((count 0))
(thread-sleep! 20) ;; no need to do this very often
(let ((numrunning (db:get-count-tests-running db)))
|
|
|
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
|
(db:updater)
(thread-start! th1)
;; (debug:print 0 "Server started on port " (rpc:default-server-port) "...")
;; (thread-start! th2)
;; (thread-join! th2)
;; return th2 for the calling process to do a join with
th1
)) ;; rpc:server)))
(define (rpc-transport:keep-running db host:port)
;; if none running or if > 20 seconds since
;; server last used then start shutdown
(let loop ((count 0))
(thread-sleep! 20) ;; no need to do this very often
(let ((numrunning (db:get-count-tests-running db)))
|