0
0
mirror of https://github.com/nodejs/node.git synced 2024-12-01 16:10:02 +01:00
nodejs/benchmark/vm/run-in-context.js
Rich Trott 030dd14793 benchmark: add benchmark for vm.runIn*()
Introduce benchmarks for vm.runInContext() and vm.runInThisContext().

PR-URL: https://github.com/nodejs/node/pull/10816
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Brian White <mscdex@mscdex.net>
2017-01-18 08:26:57 -08:00

33 lines
755 B
JavaScript

'use strict';
const common = require('../common.js');
const bench = common.createBenchmark(main, {
n: [1],
breakOnSigint: [0, 1],
withSigintListener: [0, 1]
});
const vm = require('vm');
function main(conf) {
const n = +conf.n;
const options = conf.breakOnSigint ? {breakOnSigint: true} : {};
const withSigintListener = !!conf.withSigintListener;
process.removeAllListeners('SIGINT');
if (withSigintListener)
process.on('SIGINT', () => {});
var i = 0;
const contextifiedSandbox = vm.createContext();
common.v8ForceOptimization(vm.runInContext,
'0', contextifiedSandbox, options);
bench.start();
for (; i < n; i++)
vm.runInContext('0', contextifiedSandbox, options);
bench.end(n);
}