diff options
Diffstat (limited to 'tests/resource-pool.scm')
-rw-r--r-- | tests/resource-pool.scm | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/resource-pool.scm b/tests/resource-pool.scm index 24a4f53..1d998ef 100644 --- a/tests/resource-pool.scm +++ b/tests/resource-pool.scm @@ -72,4 +72,27 @@ (destroy-resource-pool resource-pool)))) +(run-fibers-for-tests + (lambda () + (let* ((counter 0) + (resource-pool (make-resource-pool + (lambda () + (let ((start-val counter)) + (sleep 0.05) + (if (= start-val counter) + (set! counter (+ 1 counter)) + (error "collision detected"))) + (new-number)) + 1))) + (fibers-for-each + (lambda _ + (with-resource-from-pool + resource-pool res + (let ((start-val counter)) + (sleep 0.05) + (if (= start-val counter) + (set! counter (+ 1 counter)) + (error "collision detected"))))) + (iota 50))))) + (display "resource-pool test finished successfully\n") |