Modul Basismodul

Modulprozess

Prozessverarbeitungsmodul zur Verwaltung der Ressourcen des aktuellen Prozesses

Referenzmethode:

1
var process = require('process');

Prozessereignis

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

vorExit-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 Aufgabenwarteschlange keine zusätzliche Arbeit hinzugefügt wird. Wenn jedoch die beforeExitEreignisbindungen des Callback-Listeners eine neue Aufgabe starten, z. B. das Öffnen einer Glasfaser, wird der Prozess fibjs weiter ausgeführt.

process.exitCodeAls einziger Parameter, der an den Wert des beforeExitEreignis-Listeners der Callback-Funktion übergeben wird. Wenn der Prozess aus expliziten Gründen beendet wird, z. B. durch einen direkten Anrufprocess.exitOder eine nicht abgefangene Ausnahme beforeExitauslösen , das Ereignis wird nicht ausgelöst.

Exit-Ereignis

Wenn fibjs beendet wird, wird das Ereignis exitausgelöst, sobald die gesamte exitAusführung des Ereignisbindungslisteners abgeschlossen ist, der Prozess wird beendet will

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

exit Die Callback-Funktion des Event-Listeners hat nur einen Eingabeparameter. Der Wert dieses Parameters kann 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 (zB entspricht das Ereignis 'SIGINT' dem Signal SIGINT).

Signalereignisse unterscheiden sich von anderen Prozessereignissen Signalereignisse werden vorweggenommen Wenn ein Signal auftritt, unabhängig vom Strom ioOperation oder JavaScript-Operation wird das entsprechende Ereignis so schnell wie möglich auslösen. Mit folgendem Code können Sie beispielsweise die laufende Anwendung unterbrechen und den laufenden Status ausgeben:

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 läuft, kann es von allen Plattformen unterstützt werden und kann normalerweise durch STRG+C ausgelöst werden.
  • SIGTERM: Dieses Signal wird ausgelöst, wenn der Prozess beendet 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);

Aufrufparameter:

  • 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);

Aufrufparameter:

  • mask: String, neue Maske angeben, Stringtyp 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 hochgenaue Uhrzeit des Systems zurück, diese Uhrzeit hat nichts mit der aktuellen Uhrzeit zu tun, wird nur für hochgenaues Timing verwendet

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

Aufrufparameter:

  • diff: Array, die anfängliche Zeit für den Vergleich

Ergebnis zurückgeben:

  • Array, Gibt die Timing-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);

Aufrufparameter:

  • code: Integer, Prozessergebnis zurückgeben

cwd

Gibt den aktuellen Arbeitspfad des Betriebssystems zurück

1
static String process.cwd();

Ergebnis zurückgeben:

  • String, Gibt den aktuellen Systempfad zurück

chdir

Ändern Sie den aktuellen Arbeitspfad des Betriebssystems

1
static process.chdir(String directory);

Aufrufparameter:

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

uptime

Abfrage der Laufzeit der Laufumgebung in Sekunden

1
static Number process.uptime();

Ergebnis zurückgeben:

  • Number, Gibt den Wert zurück, der die Zeit repräsentiert

memoryUsage

Abfrage des Speichernutzungsberichts des aktuellen Prozesses

1
static Object process.memoryUsage();

Ergebnis zurückgeben:

  • Object, Return enthält Speicherbericht

Der Speicherbericht generiert Ergebnisse ähnlich den folgenden:

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

unter ihnen:

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

nextTick

Starten Sie eine Faser

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

Aufrufparameter:

  • func: Funktion, spezifizieren Sie die Funktion, 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 des angegebenen Namens

1
static Value process.binding(String name);

Aufrufparameter:

  • name: String, geben Sie den Namen des abzufragenden internen Moduls an

Ergebnis zurückgeben:

  • Value, Gibt 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 verwendet, um die Betriebsumgebung einzustellen

1
static readonly Array process.execArgv;

version

String, String der Fibjs-Version zurückgeben

1
static readonly String process.version;

versions

Objekt, Versionsinformationen von fibjs und Komponenten zurückgeben

1
static readonly Object process.versions;

execPath

String, den vollständigen Pfad der aktuell ausgeführten Ausführungsdatei abfragen

1
static readonly String process.execPath;

env

Objekt, Abfrage der Umgebungsvariablen des aktuellen Prozesses

1
static readonly Object process.env;

arch

String, Abfrage der aktuellen CPU-Umgebung, mögliche Ergebnisse sind 'amd64','arm','arm64','ia32'

1
static readonly String process.arch;

platform

String, Abfrage des aktuellen Plattformnamens, mögliche Ergebnisse sind 'darwin','freebsd','linux' oder'win32'

1
static readonly String process.platform;

pid

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

1
static readonly Integer process.pid;

ppid

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

1
static readonly Integer process.ppid;

stdin

Stream, Abfrage des Standardeingabeobjekts des aktuellen Prozesses, in tty Im TTYInputStream, Andernfalls Stream

1
static readonly Stream process.stdin;

stdout

Stream, Abfrage des Standardausgabeobjekts des aktuellen Prozesses, in tty Im TTYOutputStream, Andernfalls Stream

1
static readonly Stream process.stdout;

stderr

Stream, Abfrage des Standardfehlerausgabeobjekts des aktuellen Prozesses, in tty Im TTYOutputStream, Andernfalls Stream

1
static readonly Stream process.stderr;

exitCode

Integer, fragen Sie den Exit-Code des aktuellen Prozesses ab und setzen Sie ihn

1
static Integer process.exitCode;