Tweak the thread pool delay and duration loggers
Bringing the functionality in line with the resource pool loggers.
This commit is contained in:
parent
a44cc014a4
commit
b411faf279
2 changed files with 59 additions and 10 deletions
|
|
@ -172,4 +172,54 @@
|
|||
(destroy-thread-pool thread-pool)
|
||||
(assert-equal pool-size destructor-count))
|
||||
|
||||
;; Test delay-logger and duration-logger for fixed-size thread pool
|
||||
(let* ((logged-delay #f)
|
||||
(logged-duration #f)
|
||||
(thread-pool
|
||||
(make-fixed-size-thread-pool
|
||||
1
|
||||
#:delay-logger
|
||||
(lambda (seconds)
|
||||
(set! logged-delay seconds))
|
||||
#:duration-logger
|
||||
(lambda (seconds)
|
||||
(set! logged-duration seconds)))))
|
||||
|
||||
(call-with-thread
|
||||
thread-pool
|
||||
(lambda ()
|
||||
(usleep 100000)))
|
||||
|
||||
(assert-true (number? logged-delay))
|
||||
(assert-true (number? logged-duration))
|
||||
(assert-true (>= logged-duration 0.1))
|
||||
|
||||
(destroy-thread-pool thread-pool))
|
||||
|
||||
;; Test delay-logger and duration-logger for dynamic thread pool
|
||||
(run-fibers-for-tests
|
||||
(lambda ()
|
||||
(let* ((logged-delay #f)
|
||||
(logged-duration #f)
|
||||
(thread-pool
|
||||
(make-thread-pool
|
||||
1
|
||||
#:delay-logger
|
||||
(lambda (seconds)
|
||||
(set! logged-delay seconds))
|
||||
#:duration-logger
|
||||
(lambda (seconds)
|
||||
(set! logged-duration seconds)))))
|
||||
|
||||
(call-with-thread
|
||||
thread-pool
|
||||
(lambda ()
|
||||
(usleep 100000)))
|
||||
|
||||
(assert-true (number? logged-delay))
|
||||
(assert-true (number? logged-duration))
|
||||
(assert-true (>= logged-duration 0.1))
|
||||
|
||||
(destroy-thread-pool thread-pool))))
|
||||
|
||||
(display "thread-pool test finished successfully\n")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue