Make it possible to increase the number of thread pool threads

And double the default to 16.
This commit is contained in:
Christopher Baines 2022-10-02 15:08:18 +01:00
parent ce2e13aa45
commit ff77bbea7e
2 changed files with 19 additions and 3 deletions

View file

@ -28,6 +28,7 @@
with-time-logging
prevent-inlining-for-tests
%thread-pool-threads
parallel-via-thread-pool-channel
par-map&
letpar&
@ -55,7 +56,10 @@
(define-syntax-rule (prevent-inlining-for-tests var)
(set! var var))
(define* (make-thread-pool-channel #:key (threads 8))
(define %thread-pool-threads
(make-parameter 8))
(define* (make-thread-pool-channel threads)
(define (delay-logger seconds-delayed)
(when (> seconds-delayed 1)
(format
@ -107,7 +111,8 @@
(define (make-thread-pool-channel!')
(with-mutex %thread-pool-mutex
(unless %thread-pool-channel
(set! %thread-pool-channel (make-thread-pool-channel))
(set! %thread-pool-channel (make-thread-pool-channel
(%thread-pool-threads)))
(set! make-thread-pool-channel! (lambda () #t)))))
(define make-thread-pool-channel!