Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 uid=33(www-data) gid=33(www-data) groups=33(www-data) Safe-mode: OFF (not secure) /var/www/html/proxy_server/node_modules/cpulimit/ drwxr-xr-x | |
| Viewing file: Select action/file-type:
var processFinder = require('./lib/process_finder'),
ProcessFamily = require('./lib/process_family');
var MILS_IN_SECOND = 1000,
MAX_PRIORITY = -20;
function createProcessFamily(options, callback) {
processFinder.find(options, function(err, parentProcess) {
if(err) {
return callback(err);
}
var processFamily = new ProcessFamily(parentProcess, options.includeChildren);
callback(null, processFamily);
});
}
function limit(processFamily, options, callback) {
var running = true,
runningTime = MILS_IN_SECOND * (options.limit / 100),
idleTime = MILS_IN_SECOND - runningTime,
timeoutId = setTimeout(next, runningTime),
parentProcess = processFamily.parentProcess;
if(!parentProcess.kill(0)) {
return stop(new Error('Process does not exist.'));
}
parentProcess.on('error', function (err) {
stop(err);
});
parentProcess.on('exit', function(code, signal) {
stop();
});
function next() {
processFamily.refresh(function() {
var timeout = null;
if(processFamily.kill(running ? 'SIGSTOP' : 'SIGCONT')) {
timeout = running ? idleTime : runningTime;
}
if(timeout !== null) {
running = !running;
timeoutId = setTimeout(next, timeout);
}
else {
stop();
}
});
}
function stop(err) {
clearTimeout(timeoutId);
callback(err);
}
}
exports.createProcessFamily = createProcessFamily;
exports.limit = limit;
|
:: Command execute :: | |
--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.046 ]-- |