溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Nodejs如何結(jié)束進(jìn)程

發(fā)布時(shí)間:2021-01-19 10:28:34 來源:億速云 閱讀:257 作者:小新 欄目:web開發(fā)

這篇文章將為大家詳細(xì)講解有關(guān)Nodejs如何結(jié)束進(jìn)程,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

NodeJS結(jié)束進(jìn)程

  • Process:對(duì)象是一個(gè)全局變量,它提供有關(guān)當(dāng)前 Node.js 進(jìn)程的信息并對(duì)其進(jìn)行控制。 作為一個(gè)全局變量,它始終可供 Node.js 應(yīng)用程序使用,無需使用 require()。 它也可以使用 require() 顯式地訪問

process.kill(pid[, signal])事件

新增于:v0.0.06(node)

  • pid進(jìn)程PID

  • signal|將發(fā)送的信號(hào),類型為字符串或數(shù)字,默認(rèn)值:SIGTERM

  • process.kill()方法signal發(fā)給pid標(biāo)識(shí)的進(jìn)程

  • 信號(hào)名稱是如 ‘SIGINT’ 或 'SIGHUP’的字符串。更多信息,參見信號(hào)事件和 kill(2)。

如果目標(biāo) pid 不存在,該方法會(huì)拋出錯(cuò)誤。 作為一個(gè)特殊例子,信號(hào) 0 可以用于測(cè)試進(jìn)程是否存在。 在 Windows 平臺(tái)中,如果 pid 用于殺死進(jìn)程組,則會(huì)拋出錯(cuò)誤。

即使這個(gè)函數(shù)的名稱是 process.kill(),它其實(shí)只是發(fā)送信號(hào),這點(diǎn)與 kill 系統(tǒng)調(diào)用類似。 發(fā)送的信號(hào)可能是做一些與殺死目標(biāo)進(jìn)程無關(guān)的事情

簡(jiǎn)單粗暴的代碼演示

  • 先看看官網(wǎng)文檔溫柔代碼演示

process.on('SIGHUP', () => {
  console.log('收到 SIGHUP 信號(hào)');
});

setTimeout(() => {
  console.log('退出中');
  process.exit(0);
}, 100);

process.kill(process.pid, 'SIGHUP');
  • 簡(jiǎn)單粗暴的方式直接演示

    • 由于個(gè)人工作時(shí)間上的原因就不細(xì)寫代碼,但是整體思路都是一樣的

    • 需求:根據(jù)自己去電腦上面看自己的進(jìn)程pid來獲取自己對(duì)應(yīng)的pid將其填入變量中,完成編碼后使用node編譯代碼---->執(zhí)行

    • node process.js
    • let pid = 11784;//11784是我個(gè)人電腦上的應(yīng)用程的pid,可根據(jù)自己電腦的pid填入其中
      process.kill(pid, 'SIGTERM');//結(jié)束pid的進(jìn)程

關(guān)于“Nodejs如何結(jié)束進(jìn)程”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI