diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2022-09-06 23:08:37 +0530 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-06 23:08:37 +0530 |
commit | d2a408f452db1157a1e6a14810bd1f03fc431d9d (patch) | |
tree | 66c45829a78cb3c6cd6e875cca65ce26384fe50d /cli/bench/tcp.js | |
parent | c0a684c14ed70717e18b528bb8f366eb593636a7 (diff) |
perf(runtime): short-circuit `queue_async_op` for Poll::Ready (#15773)
Diffstat (limited to 'cli/bench/tcp.js')
-rw-r--r-- | cli/bench/tcp.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/cli/bench/tcp.js b/cli/bench/tcp.js new file mode 100644 index 000000000..826f5f87b --- /dev/null +++ b/cli/bench/tcp.js @@ -0,0 +1,22 @@ +// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license. + +const listener = Deno.listen({ port: 4500 }); +const response = new TextEncoder().encode( + "HTTP/1.1 200 OK\r\nContent-Length: 12\r\n\r\nHello World\n", +); + +// Accept a connection and write packets as fast as possible. +async function acceptWrite() { + const conn = await listener.accept(); + try { + while (true) { + await conn.write(response); + } + } catch { + // Pass + } + conn.close(); +} + +await acceptWrite(); +await acceptWrite(); |