1. 程式人生 > >ubuntu下nodejs的子程序終止

ubuntu下nodejs的子程序終止

var exec = require('child_process').exec
var spawn = require('child_process').spawn
test = exec('./testchild')
childpid = test.pid + 1
console.log(childpid)

endprocess = spawn('kill',['-9',childpid])

endprocess.stdout.on('data', function(data){
	console.log('standard output:\n' + data)
})

endprocess.stderr.on('data', function(data){
	console.log('standard error output:\n' + data)
})

endprocess.on('exit', function(code, signal){
	console.log('child process exit, exit:' + code)
	//test.pid = 0
	console.log('current child process pid: ' + test.pid)
})

test.on('exit', function(code, signal){
	console.log('child process closed with exit code ' + code)
	console.log('receive signal ' + signal)
})

test.stdout.on('data', function(data){
	console.log('standard output: \n' + data)
	//child_process.spawn("kill",['-9','test.pid'])
	//test.kill(signal = 'SIGTERM')
	console.log('terminate the child process\n')
})

一開始總是沒法終止子程序,後來開啟工作管理員才發現,pid返回的值比它真正的值小1.

加1之後就可以終止了。

相關推薦

ubuntunodejs程序終止

var exec = require('child_process').exec var spawn = require('child_process').spawn test = exec('./testchild') childpid = test.pid + 1 con

ubuntunodejs的安裝 webstrome開發nodejs

一、nodejs安裝 2、解壓檔案到目錄。  例如:/opt/node-v4.4.7-linux-x64 3、修改環境變數:在 /etc/profile檔案的最後新增以下幾行: export NODE_HOME=/opt/node-v4.4.7-linux-x64 e

ubuntunodejs安裝與版本升級

在 Github 上獲取 Node.js 原始碼: $ sudo git clone https://github.com/nodejs/node.gitCloninginto'node'... 修改目錄許可權: $ sudo chmod -R 755 node 進

程序fork()兩次---解決一個程序不必等待程序終止,也不希望程序處於僵死狀態(一般是伺服器程序fork())

首先,要了解什麼叫殭屍程序,什麼叫孤兒程序,以及伺服器程序執行所需要的一些條件。兩次fork()就是為了解決這些相關的問題而出現的一種程式設計方法。  孤兒程序         孤兒程序是指父程序在子程序結束之前死亡(return 或exit)。如下圖1所示:

Ubuntu安裝nodejs4.x,並實現開機自動啟動forever程序守護nodejs應用後臺執行

一、在Ubuntu下安裝nodejs4.x 官方文件的方法最簡單,不會出錯 Node.js v4.x: NOTE: If you are using Ubuntu Precise or Debian Wheezy, you might want to read a

Ubuntu用glade和GTK+開發C語言界面程序(一)

命令行 簡單的 暑假 all 位置 相同 write 3.0 面向對象的思想 前言:對於大學中計算機系的每年暑假的課設有太多想說的,能從中學到非常多東西,當然不排除打醬油的,這些能夠掠過哦,凡事都打醬油。人生也是打醬油的吧。2333。 對於大三曾經的課設一般的要求

ubuntu創建第一個rails應用程序

pos readme size spring iss width ron starting font 一.創建一個新的應用程序 在控制臺輸入 > rails new demo create create README.rdoc

ubuntu 安裝Nodejs

https 二進制文件 bst -c spa -s tty linux attr 本次安裝Nodejs使用的是編譯好的版本 1、wget https://nodejs.org/dist/v4.4.4/node-v4.4.4-linux-x64.tar.xz 下載之後,由於

Ubuntu簡單的QT繪圖程序

部件 str repaint www. his max 起點 結果 user 原文:http://www.linuxidc.com/Linux/2011-08/41220.htm 當初在學MFC時,最經典的入門實例就是繪圖程序,其作用相當於Console Applica

ubuntu安裝程序的三種方法(轉)

安裝nagios -s 需要 ibm 查詢 gin make this www. 引言 在Ubuntu當中,安裝應用程序我所知道的有三種方法,分別是apt-get,dpkg安裝deb和make install安裝源碼包三種。下面針對每一種方法各舉例來說明。 一、apt-

Nodejs 和 Electron ubuntu快速安裝

配置問題 選擇 https 前端知識 VM 失敗 url ctr 網上 查找時間管理軟件的時候發現了superProductivity這個程序,使用electron進行開發,於是看了一下介紹,手癢了,嘗試進行環境搭建,一下步慢慢補齊前端知識吧 nodejs安裝 nod

Java全棧程序員之02:UbuntuJava環境安裝、配置、測試

配置文件 軟件 三方 shel class 系統配置文件 一件事 devel java10 在上文講完之後,我們手裏的ubuntu只能算是一個上網機,什麽也幹不了,本篇我們將折騰它為開發機。 這裏,我們這裏假定你對linux體系是初級選手,所以本篇會講的啰嗦一點,高手就出

ubuntu安裝最新版本nodejs和npm

ubuntu環境下安裝最新版本的nodejs和npm 說明:本人嘗試了網上多種ubuntu下安裝nodejs和npm總是報一些奇怪的錯誤,困惑了 一整天,最終測試安裝最新版本的nodejs成功 nodejs版本是:v10.11.0 npm版本是:6.4.1 教程如下: 一.下載最

檢視ubuntu程序所在的目錄

     在linux啟動一個程序時,會給程序分配一個ID,就是我們的PID,而與此同時了,系統會在/proc下建立一個資料夾,以PID命名,在該資料夾下會有我們的程序的資訊,其中包括一個名為exe的檔案,這就我們想要的,就像win下的exe檔案,它是原始程式的一個連結

Ubuntu使用WebStorm開發nodejs

一、Ubuntu下WebStorm的安裝: 注:WebStorm是基於Java的,需要JDK支援,需提前完成安裝JDK及環境變數的配置,而且需要先安裝完nodejs和npm,請看這篇文章Ubuntu下安

Ubuntu用webstorm開發Nodejs(二)

一、nodejs+express開發專案 package.json檔案包含了應用程式的基本資訊。其中“dependencies”部分描述了你想安裝模組的名稱和版本。該案例,接受Express 4.16.0版本,你可以在該部分列出你想要的所有依賴。 如果你想安裝

程序結束,其程序不會結束,會掛到init程序 孤兒程序與殭屍程序[總結]

結論:一個父程序產生子程序,父程序結束(kill),子程序不會結束,子程序被init程序託管 下面是過程:     d.sh指令碼是一個ping命令,執行d.sh             &nb

ubuntu tar、dpkg程序錯誤

命令列失敗資訊如下:tar:無法識別的選項“--warning=no-timestamp”請用“tar --help”或“tar --usage”獲得更多資訊。dpkg-deb: error: 子程序 tar 返回了錯誤號 64dpkg:處理 /var/cache/apt/

ubuntu安裝配置nodejs

nodejs是一個為javascript而生的強大“虛擬機器”,因此首選在虛擬機器下進行安裝執行,能更好的適應在原生的伺服器環境下進行開發。 常見的基本都是四種方法 1. 從原始碼安裝Node.JS 2. 用包管理器安裝Node.JS 3. 從

zz: Python subprocess建立程序(Windows開啟新的CMD視窗)

Python提供多個建立子程序的模組,我比較習慣使用subprocess模組,因為在Python手冊中有這樣一段話:   This module intends to replace several other, older modules and functions, such as: os.syst