11cb0ef41Sopenharmony_ci'use strict'; 21cb0ef41Sopenharmony_ciconst common = require('../common.js'); 31cb0ef41Sopenharmony_ciconst { AsyncLocalStorage } = require('async_hooks'); 41cb0ef41Sopenharmony_ci 51cb0ef41Sopenharmony_ciconst bench = common.createBenchmark(main, { 61cb0ef41Sopenharmony_ci n: [1e7], 71cb0ef41Sopenharmony_ci}); 81cb0ef41Sopenharmony_ci 91cb0ef41Sopenharmony_ciasync function run(store, n) { 101cb0ef41Sopenharmony_ci for (let i = 0; i < n; i++) { 111cb0ef41Sopenharmony_ci await new Promise((resolve) => store.run(i, resolve)); 121cb0ef41Sopenharmony_ci } 131cb0ef41Sopenharmony_ci} 141cb0ef41Sopenharmony_ci 151cb0ef41Sopenharmony_cifunction main({ n }) { 161cb0ef41Sopenharmony_ci const store = new AsyncLocalStorage(); 171cb0ef41Sopenharmony_ci bench.start(); 181cb0ef41Sopenharmony_ci run(store, n).then(() => { 191cb0ef41Sopenharmony_ci bench.end(n); 201cb0ef41Sopenharmony_ci }); 211cb0ef41Sopenharmony_ci} 22