From 0d0ad360d32c55869ef0a4d89d97dd83f4628c87 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Sat, 11 Jan 2020 10:49:16 +0100 Subject: refactor: remove Isolate.current_send_cb_info and DenoBuf, port Isolate.shared_response_buf (#3643) * remove Isolate.current_send_cb_info * remove DenoBuf * remove Isolate.shared_ab * port Isolate.shared_response_buf (last bit not ported from libdeno) * add some docs for Isolate and EsIsolate --- core/examples/http_bench.js | 28 +++++++++++++--------------- 1 file changed, 13 insertions(+), 15 deletions(-) (limited to 'core/examples') diff --git a/core/examples/http_bench.js b/core/examples/http_bench.js index f553d4800..db57401cc 100644 --- a/core/examples/http_bench.js +++ b/core/examples/http_bench.js @@ -17,11 +17,15 @@ function assert(cond) { } function createResolvable() { - let methods; - const promise = new Promise((resolve, reject) => { - methods = { resolve, reject }; + let resolve; + let reject; + const promise = new Promise((res, rej) => { + resolve = res; + reject = rej; }); - return Object.assign(promise, methods); + promise.resolve = resolve; + promise.reject = reject; + return promise; } const scratch32 = new Int32Array(3); @@ -59,25 +63,19 @@ function sendAsync(opId, arg, zeroCopy = null) { function sendSync(opId, arg) { const buf = send(0, opId, arg); const record = recordFromBuf(buf); - return record.result; + return record[2]; } function recordFromBuf(buf) { assert(buf.byteLength === 3 * 4); - const buf32 = new Int32Array(buf.buffer, buf.byteOffset, buf.byteLength / 4); - return { - promiseId: buf32[0], - arg: buf32[1], - result: buf32[2] - }; + return new Int32Array(buf.buffer, buf.byteOffset, buf.byteLength / 4); } function handleAsyncMsgFromRust(opId, buf) { const record = recordFromBuf(buf); - const { promiseId, result } = record; - const p = promiseMap.get(promiseId); - promiseMap.delete(promiseId); - p.resolve(result); + const p = promiseMap.get(record[0]); + promiseMap.delete(record[0]); + p.resolve(record[2]); } /** Listens on 0.0.0.0:4500, returns rid. */ -- cgit v1.2.3