virtual-timer
TypeScript icon, indicating that this package has built-in type declarations

2.0.1 • Public • Published

Virtual Timers

What is it

It creates only a single timer with specified precision (like a virtual cpu tick), and handles all timeouts and intervals in it.

Pros

  • Performance gain when you set hundreds, thousands, billions of intervals & timeouts.

Cons

  • Performances loss when you set a few intervals & timeouts.

NextJS config

Since the module provided as pure ts files, you need to add this config to your NextJS project:

// next.config.mjs

/** @type {import('next').NextConfig} */
const nextConfig = {
    transpilePackages: ["virtual-timer"]
};

export default nextConfig;

Usage

import { VirtualTimer } from "virtual-timer";

const virtualTimer = new VirtualTimer();
virtualTimer.timeout(
    (delta) => { console.log(`Timeout running after ${delta} ms`) },
    1000
);
virtualTimer.interval(
    (delta) => { console.log(`Interval running after ${delta} ms`) },
    1000
);

You may specify precision (lower is more precise)

const virtualTimer = new VirtualTimer(5);

You may not use delta:

virtualTimer.timeout(
    () => { console.log("delta is optional") },
    1000
);

You may cancel your timeouts & intervals:

const controller = virtualTimer.timeout(
    () => { console.log("you won't see me") },
    1000
);
controller.cancel()

/virtual-timer/

    Package Sidebar

    Install

    npm i virtual-timer

    Weekly Downloads

    0

    Version

    2.0.1

    License

    ISC

    Unpacked Size

    5.02 kB

    Total Files

    3

    Last publish

    Collaborators

    • ufukbakan