mirror of
https://github.com/denoland/deno.git
synced 2024-11-22 15:06:54 -05:00
667812a297
Fixes a regression where async writes and reads could get out of order.
17 lines
392 B
TypeScript
17 lines
392 B
TypeScript
const encoder = new TextEncoder();
|
|
|
|
const pending = [];
|
|
|
|
// do this a bunch of times to ensure it doesn't race
|
|
// and everything happens in order
|
|
for (let i = 0; i < 50; i++) {
|
|
const buf = new Uint8Array(1);
|
|
pending.push(
|
|
Deno.stdin.read(buf).then(() => {
|
|
return Deno.stdout.write(buf);
|
|
}),
|
|
);
|
|
}
|
|
|
|
await Promise.all(pending);
|
|
await Deno.stdout.write(encoder.encode("\n"));
|