summaryrefslogtreecommitdiff
path: root/benchmark/dgram/multi-buffer.js
diff options
context:
space:
mode:
Diffstat (limited to 'benchmark/dgram/multi-buffer.js')
-rw-r--r--benchmark/dgram/multi-buffer.js10
1 files changed, 7 insertions, 3 deletions
diff --git a/benchmark/dgram/multi-buffer.js b/benchmark/dgram/multi-buffer.js
index a1c50551b8..7b69a82255 100644
--- a/benchmark/dgram/multi-buffer.js
+++ b/benchmark/dgram/multi-buffer.js
@@ -27,9 +27,13 @@ function main({ dur, len, num, type, chunks }) {
function onsend() {
if (sent++ % num === 0) {
- for (var i = 0; i < num; i++) {
- socket.send(chunk, PORT, '127.0.0.1', onsend);
- }
+ // The setImmediate() is necessary to have event loop progress on OSes
+ // that only perform synchronous I/O on nonblocking UDP sockets.
+ setImmediate(() => {
+ for (var i = 0; i < num; i++) {
+ socket.send(chunk, PORT, '127.0.0.1', onsend);
+ }
+ });
}
}