Rumah >hujung hadapan web >Soal Jawab bahagian hadapan >Bagaimana untuk membuat pertanyaan memproses PID dalam Node.js

Bagaimana untuk membuat pertanyaan memproses PID dalam Node.js

PHPz
PHPzasal
2023-04-26 09:11:171733semak imbas

Node.js ialah persekitaran berjalan JavaScript sumber terbuka berdasarkan enjin Chrome V8, yang boleh menjalankan JavaScript pada bahagian pelayan. Ia menggunakan model I/O yang dipacu peristiwa, tidak menyekat, menjadikannya ideal untuk aplikasi interaksi data masa nyata yang ringan, cekap dan.

Apabila membangunkan aplikasi Node.js, kadangkala kita perlu menanyakan PID proses semasa, iaitu ID proses. PID ialah jenis berangka yang mengenal pasti proses dalam sistem secara unik. Biasanya, kita boleh menanyakan PID proses melalui arahan shell atau API sistem. Artikel ini akan memperkenalkan cara untuk menanyakan proses PID dalam Node.js.

Soal PID melalui objek proses

Dalam Node.js, anda boleh menggunakan objek proses untuk mendapatkan maklumat tentang proses semasa, termasuk PID proses. Objek proses ialah salah satu objek global Node.js dan kami boleh mengaksesnya pada bila-bila masa. Berikut ialah contoh kod untuk mendapatkan PID proses semasa:

console.log('当前进程的 PID 是:', process.pid);

Kod di atas akan mengeluarkan PID proses Node.js semasa.

Menyiasat PID mengikut nama proses

Selain menanyakan PID proses semasa, kadangkala kita juga perlu menanyakan PID proses tertentu. Pada masa ini, PID boleh disoal dengan nama proses. Dalam Linux/macOS, anda boleh menggunakan perintah shell ps untuk membuat pertanyaan memproses maklumat. Dalam Windows, anda boleh menggunakan arahan senarai tugas untuk menanyakan maklumat memproses. Berikut ialah contoh kod untuk mendapatkan PID bagi proses yang ditentukan:

Linux/macOS

const { exec } = require('child_process');

exec('pgrep node', (err, stdout, stderr) => {
  if (!err && stdout) {
    console.log('当前 Node.js 进程的 PID 是:', stdout.trim());
  }
});

Kod di atas akan menanyakan PID proses Node.js yang sedang berjalan melalui perintah shell pgrep node, dan hasil Output.

Windows

const { exec } = require('child_process');

exec('tasklist /FI "IMAGENAME eq node.exe" /NH', (err, stdout, stderr) => {
  if (!err && stdout) {
    const pids = stdout.trim().split('\n').map(line => {
      const columns = line.trim().split(/\s+/);
      return parseInt(columns[1]);
    }).filter(pid => !isNaN(pid));
    console.log('当前 Node.js 进程的 PID 是:', pids[0]);
  }
});

Kod di atas akan menanyakan PID proses Node.js yang sedang dijalankan melalui arahan shell tasklist /FI "IMAGENAME eq node.exe" /NH dan mengeluarkan hasilnya.

Ringkasan

Artikel ini memperkenalkan dua kaedah untuk Node.js untuk menanyakan proses PID: menanyakan PID proses semasa melalui objek proses dan menanyakan PID proses yang ditentukan melalui nama proses. Kedua-dua kaedah ini sangat berguna untuk aplikasi Node.js yang perlu mengurus proses.

Atas ialah kandungan terperinci Bagaimana untuk membuat pertanyaan memproses PID dalam Node.js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn