diff --git a/lib/modules/Thread.pmod b/lib/modules/Thread.pmod
index 6e84496fc56dfe8f4b7364822551615407c75c46..35867454a68574a5d62f12b382ae04ac0101ce0a 100644
--- a/lib/modules/Thread.pmod
+++ b/lib/modules/Thread.pmod
@@ -378,7 +378,7 @@ optional class Queue {
     buffer[w_ptr] = value;
     w_ptr++;
     int items = w_ptr - r_ptr;
-    r_cond::signal();
+    r_cond::broadcast();
     key=0;
     return items;
   }