summaryrefslogtreecommitdiff
path: root/js/dispatch.ts
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2018-10-17 13:04:28 -0400
committerRyan Dahl <ry@tinyclouds.org>2018-10-17 20:20:06 -0400
commit213885a9d00a913e3fd2eb21a5992efb63c888f5 (patch)
tree7ac1c5ffad1c3125d72155e40ef5ea75c39945ba /js/dispatch.ts
parent4e2e185de74edaf49d77983c935686616ba9d07c (diff)
Optimization: Reuse ArrayBuffer during serialization.
Diffstat (limited to 'js/dispatch.ts')
-rw-r--r--js/dispatch.ts7
1 files changed, 4 insertions, 3 deletions
diff --git a/js/dispatch.ts b/js/dispatch.ts
index 1a8b4d2e0..d416264bd 100644
--- a/js/dispatch.ts
+++ b/js/dispatch.ts
@@ -1,6 +1,6 @@
// Copyright 2018 the Deno authors. All rights reserved. MIT license.
import { libdeno } from "./libdeno";
-import { flatbuffers } from "flatbuffers";
+import * as flatbuffers from "./flatbuffers";
import * as msg from "gen/msg_generated";
import * as errors from "./errors";
import * as util from "./util";
@@ -86,6 +86,7 @@ function sendInternal(
msg.Base.addSync(builder, sync);
msg.Base.addCmdId(builder, cmdId);
builder.finish(msg.Base.endBase(builder));
-
- return [cmdId, libdeno.send(builder.asUint8Array(), data)];
+ const res = libdeno.send(builder.asUint8Array(), data);
+ builder.inUse = false;
+ return [cmdId, res];
}