Skip to main content
interface Deno.BenchContext

Context that is passed to a benchmarked function. The instance is shared between iterations of the benchmark. Its methods can be used for example to override of the measured portion of the function.

Properties

name: string

The current benchmark name.

origin: string

The string URL of the current benchmark.

Methods

start(): void

Restarts the timer for the bench measurement. This should be called after doing setup work which should not be measured.

Warning: This method should not be used for benchmarks averaging less than 10╬╝s per iteration. In such cases it will be disabled but the call will still have noticeable overhead, resulting in a warning.

Deno.bench("foo", async (t) => {
  const data = await Deno.readFile("data.txt");
  t.start();
  // some operation on `data`...
});
end(): void

End the timer early for the bench measurement. This should be called before doing teardown work which should not be measured.

Warning: This method should not be used for benchmarks averaging less than 10╬╝s per iteration. In such cases it will be disabled but the call will still have noticeable overhead, resulting in a warning.

Deno.bench("foo", async (t) => {
  using file = await Deno.open("data.txt");
  t.start();
  // some operation on `file`...
  t.end();
});