aboutsummaryrefslogtreecommitdiff
path: root/stm/asyncTaskQueue.ml
diff options
context:
space:
mode:
authorPierre-Marie Pédrot2015-02-18 17:27:39 +0100
committerPierre-Marie Pédrot2015-02-18 17:27:39 +0100
commit4bb062f4a66c4ae5a1742e7d99fdc335de0d57a9 (patch)
treeaf8ead1cdc5af3842e683f602177ab4fa2dec9b5 /stm/asyncTaskQueue.ml
parent1be9c4da4d814c29d4ba45b121fda924adc1130e (diff)
parent29ba692f0fd25ce87392bbb7494cb62e3b97dc07 (diff)
Merge branch 'v8.5'
Diffstat (limited to 'stm/asyncTaskQueue.ml')
-rw-r--r--stm/asyncTaskQueue.ml4
1 files changed, 3 insertions, 1 deletions
diff --git a/stm/asyncTaskQueue.ml b/stm/asyncTaskQueue.ml
index 672527d9b5..e3fb0b607a 100644
--- a/stm/asyncTaskQueue.ml
+++ b/stm/asyncTaskQueue.ml
@@ -177,7 +177,7 @@ module Make(T : Task) = struct
if not (Worker.is_alive proc) then ()
else if cancelled () || !(!expiration_date) then
let () = stop_waiting := true in
- let () = TQueue.signal_destruction queue in
+ let () = TQueue.broadcast queue in
Worker.kill proc
else
let () = Unix.sleep 1 in
@@ -253,6 +253,8 @@ module Make(T : Task) = struct
Pool.destroy active;
TQueue.destroy queue
+ let broadcast { queue } = TQueue.broadcast queue
+
let enqueue_task { queue; active } (t, _ as item) =
prerr_endline ("Enqueue task "^T.name_of_task t);
TQueue.push queue item