New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

cpulimit

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cpulimit

Limit the CPU usage of a process.

latest
Source
npmnpm
Version
1.1.4
Version published
Weekly downloads
344
143.97%
Maintainers
1
Weekly downloads
 
Created
Source

node-cpulimit

A module which limits the CPU usage of a process. Useful when your computer is performing some heavy work that takes too much of the CPU cycles but you want to perform other tasks. It works by sending SIGSTOP and SIGCONT signals at regular intervals depending on the specified limit.

Usage

As a program

npm install -g cpulimit

cpulimit -l <percent> [-w <work-dir>] [-i] (-p <process id> | -c <command> | -- <command> <args>)

  Options:

    -h, --help              output usage information
    -V, --version           output the version number
    -l, --limit <percent>   the CPU usage as a percent (0 - 100)
    -p, --pid <process id>  limit by process id
    -c, --cmd <command>     limit by command name
    -- <command> <args>     spawn this command with these arguments and limit it
    -w, --wdir <directory>  set the current working directory of the spawned process
    -i, --include-children  also limit child processes.

As a library

npm install --save cpulimit

var limiter = require('cpulimit');

var options = {
    limit: 20,
    includeChildren: true,
    pid: 2324
};

limiter.createProcessFamily(options, function(err, processFamily) {
    if(err) {
        console.error('Error:', err.message);
        return;
    }

    limiter.limit(processFamily, options, function(err) {
        if(err) {
            console.error('Error:', err.message);
        }
        else {
            console.log('Done.');
        }
    });
});

options object having some of these properties:

  • limit (required) the CPU usage as a percent (0 - 100)
  • includeChildren also limit child processes
  • pid limit by process id
  • cmd limit by command name
  • spawn object with the following properties:
    • command command name
    • args array with the arguments
    • cwd working directory

Similar projects

  • https://github.com/opsengine/cpulimit (in C)
  • https://github.com/tgulacsi/mcpulimit (in Go)

FAQs

Package last updated on 15 May 2017

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts