Speedup from avoiding uselessly enqueueing an empty work queue

This commit is contained in:
Tony Garnock-Jones 2018-04-30 11:19:03 +01:00
parent 0e37037b6e
commit 671e9742c7
1 changed files with 6 additions and 5 deletions

View File

@ -335,11 +335,12 @@
(when new-handler (dataspace-subscribe! ds new-handler))))))))) (when new-handler (dataspace-subscribe! ds new-handler)))))))))
(define (commit-actions! ds ac) (define (commit-actions! ds ac)
(define pending (actor-pending-actions ac)) (define pending (queue->list (actor-pending-actions ac)))
;; (log-info "commit-actions!: ~a actions ~a" ac (queue->list pending)) ;; (log-info "commit-actions!: ~a actions ~a" ac pending)
(set-dataspace-pending-actions! ds (enqueue (dataspace-pending-actions ds) (when (pair? pending)
(action-group ac (queue->list pending)))) (set-actor-pending-actions! ac (make-queue))
(set-actor-pending-actions! ac (make-queue))) (set-dataspace-pending-actions! ds (enqueue (dataspace-pending-actions ds)
(action-group ac pending)))))
(define (run-all-pending-scripts! ds) (define (run-all-pending-scripts! ds)
(define runnable (dataspace-runnable ds)) (define runnable (dataspace-runnable ds))