Modul Grundmodul

Modulprozess

Prozessverarbeitungsmodul zum Verwalten der Ressourcen des aktuellen Prozesses

Referenzmethode:

1
var process = require('process');

Ereignis verarbeiten

Das Prozessmodulobjekt ist EventEmitter Sie können beispielsweise auf Ereignisse auf Prozessebene reagieren, indem Sie Ereignis-Listener registrieren.

beforeExit-Ereignis

Wenn die Fibjs-Mission leer war und keine zusätzliche Arbeit hinzugefügt wurde, wird das Ereignis beforeExitausgelöst

1
process.on('beforeExit', exitCode => {});

Unter normalen Umständen wird der Fibjs-Prozess beendet, wenn der Task-Warteschlange keine zusätzliche Arbeit hinzugefügt wird. Wenn der beforeExitCallback-Listener jedoch Ereignisbindungen bindet, starten Sie eine neue Aufgabe, z. B. das Öffnen einer Glasfaser, und der Fibjs-Prozess wird weiterhin ausgeführt.

process.exitCodeAls einziger Parameter, der an den Wert des beforeExitEreignis-Listeners der Rückruffunktion übergeben wird. Wenn der Prozess aus expliziten Gründen beendet werden soll, z. B. wenn Sie direkt anrufenprocess.exitWenn Sie eine nicht erfasste Ausnahme beforeExitauslösen , wird das Ereignis nicht ausgelöst.

Ereignis beenden

Wenn fibjs beendet wird, wird das Ereignis exitausgelöst, sobald die gesamte exitAusführung des Ereignisbindungs-Listeners abgeschlossen ist. Der Prozess wird beendet

1
process.on('exit', exitCode => {});

exit Die Rückruffunktion des Ereignis-Listeners hat nur einen Eingabeparameter. Der Wert dieses Parameters kann sein process.exitCode Der Attributwert oder Aufruf process.exitWenn die Methode den exitCodeWert übergeben hat.

Signalereignis

Wenn der Fibjs-Prozess ein Signal empfängt, löst er ein Signalereignis aus. Die derzeit unterstützten Signale sind SIGINT und SIGTERM. Jeder Ereignisname wird durch den Großbuchstaben des Signalnamens dargestellt (z. B. entspricht das Ereignis 'SIGINT' dem Signal SIGINT).

Signalereignisse unterscheiden sich von anderen Prozessereignissen. Signalereignisse werden ausgeschlossen. Wenn ein Signal auftritt, unabhängig vom Strom ioDie Operation oder JavaScript-Operation löst das entsprechende Ereignis so schnell wie möglich aus. Sie können beispielsweise den folgenden Code verwenden, um die aktuelle Anwendung zu unterbrechen und den laufenden Status auszugeben:

1 2 3 4 5 6
var coroutine = require('coroutine'); process.on('SIGINT', () => { coroutine.fibers.forEach(f => console.error("Fiber %d:\n%s", f.id, f.stack)); process.exit(); });

Die Signalnamen und ihre Bedeutung sind wie folgt:

  • SIGINT: Wenn das Terminal ausgeführt wird, kann es von allen Plattformen unterstützt werden und wird normalerweise durch STRG + C ausgelöst.
  • SIGTERM: Dieses Signal wird ausgelöst, wenn der Prozess abgebrochen wird. Wird unter Windows nicht unterstützt.

Statische Funktion

umask

Ändern Sie die aktuelle Umask. Windows unterstützt diese Methode nicht

1
static Integer process.umask(Integer mask);

Parameter aufrufen:

  • mask: Integer, geben Sie eine neue Maske an

Ergebnis zurückgeben:

  • Integer, Zurück zur vorherigen Maske

Ändern Sie die aktuelle Umask. Windows unterstützt diese Methode nicht

1
static Integer process.umask(String mask);

Parameter aufrufen:

  • mask: String, geben Sie eine neue Maske an, String-Typ oktal (zB: "0664")

Ergebnis zurückgeben:

  • Integer, Zurück zur vorherigen Maske

Gibt die aktuelle Umask zurück. Windows unterstützt diese Methode nicht

1
static Integer process.umask();

Ergebnis zurückgeben:

  • Integer, Gibt den aktuellen Maskenwert zurück

hrtime

Gibt die hochpräzise Zeit des Systems zurück. Diese Zeit hat nichts mit der aktuellen Zeit zu tun und wird nur für hochpräzises Timing verwendet

1
static Array process.hrtime(Array diff = []);

Parameter aufrufen:

  • diff: Array, die anfängliche Zeit zum Vergleich

Ergebnis zurückgeben:

  • Array, Gibt die Zeit zurück, das Format ist [Sekunden, Nanosekunden]

exit

Beenden Sie den aktuellen Prozess und geben Sie exitCode als Prozessergebnis zurück

1
static process.exit();

Beenden Sie den aktuellen Prozess und geben Sie das Ergebnis zurück

1
static process.exit(Integer code);

Parameter aufrufen:

  • code: Integer, Rückgabe des Prozessergebnisses

cwd

Gibt den aktuellen Arbeitspfad des Betriebssystems zurück

1
static String process.cwd();

Ergebnis zurückgeben:

  • String, Geben Sie den aktuellen Systempfad zurück

chdir

Ändern Sie den aktuellen Arbeitspfad des Betriebssystems

1
static process.chdir(String directory);

Parameter aufrufen:

  • directory: String, geben Sie den neuen Pfad an, der festgelegt werden soll

uptime

Fragen Sie die Laufzeit der laufenden Umgebung in Sekunden ab

1
static Number process.uptime();

Ergebnis zurückgeben:

  • Number, Gibt den Wert zurück, der die Zeit darstellt

memoryUsage

Fragen Sie den Speicherauslastungsbericht des aktuellen Prozesses ab

1
static Object process.memoryUsage();

Ergebnis zurückgeben:

  • Object, Return enthält Speicherbericht

Der Speicherbericht generiert ähnliche Ergebnisse wie folgt:

1 2 3 4 5
{ "rss": 8622080, "heapTotal": 4083456, "heapUsed": 1621800 }

darunter:

  • rss gibt die Größe des physischen Speichers zurück, der derzeit vom Prozess belegt wird
  • heapTotal gibt die Größe des Heapspeichers der v8-Engine zurück
  • heapUsed gibt die Größe des Heapspeichers zurück, der von der v8-Engine verwendet wird

nextTick

Starten Sie eine Faser

1 2
static process.nextTick(Function func, ...args);

Parameter aufrufen:

  • func: Funktion, geben Sie die Funktion an, die von der Faser ausgeführt werden soll
  • args: ..., variable Parametersequenz, diese Sequenz wird an die Funktion in der Faser übergeben

binding

Holen Sie sich das interne Modul mit dem angegebenen Namen

1
static Value process.binding(String name);

Parameter aufrufen:

  • name: String, geben Sie den Namen des internen Moduls an, das abgefragt werden soll

Ergebnis zurückgeben:

  • Value, Geben Sie das angegebene interne Modul zurück

Statische Eigenschaften

argv

Array, gibt die Befehlszeilenparameter des aktuellen Prozesses zurück

1
static readonly Array process.argv;

execArgv

Array, gibt die speziellen Befehlszeilenparameter des aktuellen Prozesses zurück. Diese Parameter werden von fibjs zum Festlegen der Betriebsumgebung verwendet

1
static readonly Array process.execArgv;

version

String, Rückgabe der Fibjs-Versionszeichenfolge

1
static readonly String process.version;

versions

Objekt, Versionsinformationen von Fibjs und Komponenten zurückgeben

1
static readonly Object process.versions;

execPath

String, fragen Sie den vollständigen Pfad der aktuell ausgeführten Ausführungsdatei ab

1
static readonly String process.execPath;

env

Objekt, fragen Sie die Umgebungsvariablen des aktuellen Prozesses ab

1
static readonly Object process.env;

arch

String, fragen Sie die aktuelle CPU-Umgebung ab, mögliche Ergebnisse sind 'amd64', 'arm', 'arm64', 'ia32'

1
static readonly String process.arch;

platform

String, fragen Sie den aktuellen Plattformnamen ab, mögliche Ergebnisse sind 'arwin', 'freebsd', 'linux' oder 'win32'

1
static readonly String process.platform;

pid

Ganzzahl, lesen Sie die ID des Prozesses, auf den das aktuelle Objekt zeigt

1
static readonly Integer process.pid;

ppid

Ganzzahl, lesen Sie die ID des übergeordneten Prozesses, auf den das aktuelle Objekt zeigt

1
static readonly Integer process.ppid;

stdin

Stream, Fragen Sie das Standardeingabeobjekt des aktuellen Prozesses ab

1
static readonly Stream process.stdin;

stdout

Stream, Fragen Sie das Standardausgabeobjekt des aktuellen Prozesses ab

1
static readonly Stream process.stdout;

stderr

Stream, Fragen Sie das Standardfehlerausgabeobjekt des aktuellen Prozesses ab

1
static readonly Stream process.stderr;

exitCode

Ganzzahl, Abfrage und Festlegen des Exit-Codes des aktuellen Prozesses

1
static Integer process.exitCode;