国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

nodejs 子進程正確的打開方式

2019-11-19 16:12:01
字體:
來源:轉載
供稿:網友

因為庫太拙了,需要在 nodejs 里調用子進程來獲取數據。然而看到 child_process 的文檔真是頭疼,這么多種啟動子進程的方法直接推到人面前,也沒個解釋,命名也十分無用。只能一個個地查看詳細說明來找到應該使用的那個……所以我整理了一下。

首先是同步創建子進程的那幾個函數。會阻塞 nodejs 的主循環。無用。(要是寫小腳本的話我直接上 shell 或者 Python 了,干嘛跟自己過不去呢。)

exec :調用 shell 來執行命令的。這部分跟「exec」這個詞的 UNIX/C 語義剛好相反。

execFile :不調用 shell,直接執行命令。這命名不明所以。

fork :執行一個 新的 nodejs 進程,并且建立一個專用的 IPC 通道。子進程除了 IPC 通道外與父進程無任何瓜葛!命名真是一如既往地誤人子弟。默認使用與父進程相同的可執行文件(nodejs 版本),也可以另外指定。

spawn :相當于 Python 的 subprocess,可以指定是否使用 shell。默認不使用 shell。也支持 cwd 啊 env 啊 argv0 啊之類的參數。

結論:如果需要用 Python 的 subprocess.run / Popen 類似的功能,就使用 child_process.spawn 。 exec 開頭的那個函數似乎沒啥大用,大概跟 subprocess 的 getoutput / check_call 之類的一樣只是有一些預設而已吧。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 哈尔滨市| 当雄县| 观塘区| 南投县| 定兴县| 惠水县| 乌海市| 鄢陵县| 清徐县| 禹城市| 龙川县| 平利县| 郴州市| 阿坝县| 法库县| 乌恰县| 乃东县| 崇礼县| 安吉县| 泾阳县| 白水县| 门源| 尉氏县| 延安市| 汶川县| 齐河县| 庆城县| 辽阳市| 右玉县| 新建县| 霞浦县| 龙海市| 鲁山县| 离岛区| 冷水江市| 光泽县| 特克斯县| 惠东县| 图木舒克市| 穆棱市| 宁都县|