在寫 node 之前??
Process 入門攻略
進程、行程、過程、行程、程序、處理程序都是指Process 都講到 Process了,就順帶提一下跟他非常有關係的 Program 和 Thread 經過我認真又隨便的研究,以我的觀察來看(完全不附帶任何責任) Program/Process/Thread 差異
Process是什麼他能幹嘛?
- Process是Node中的一個全域變數(如果不知道什麼是全域變數可以看上一篇),
- 他可以直接使用也可以使用require來使用
const process = require('process');
- 讀:獲取程序資訊 寫:執行程序操作
note
下面列舉的內容只是部分, 有興趣可以看一下官方process的API document。
獲取程序資訊
這邊感覺就是需要再查也可以的部分,我覺得不用特別記。 單純稍微看一下搞不好哪天想到有需要可以直接知道在process就可以get 到了
獲取Process所消耗的記憶體 process.memoryUsage()
process.memoryUsage()
{
rss: 21590016, // 總共佔用的記憶體
heapTotal: 4251648, // V8引擎總共使用的記憶體
heapUsed: 2161344, // V8引擎目前使用的記憶體
external: 680685 // 管理V8的記憶體
}
獲取處理user和system的CPU所需時間
process.cpuUsage()
{
user: 33426,
system: 11480
}
獲取PID資訊
目前我不知道這個要拿來幹嘛@@ 也許是打開工作管理員可以早點找到他? 或是拿取pid 在某些情境可以砍掉(?)
process.pid
<PID>
獲取目前程式執行目錄(我覺得實用)
實用原因是假使,今天要執行某module,可是在不同的資料夾而且有很多層 使用相對路徑可能會有很多層例如=> ../../../../module 這時候用這個就滿方便的。
process.cwd()
/Users/robinzhang/幹嘛@@ 也許是打開工作管理員
Node執行目錄(感覺會用到)
這個跟上面那個差異在 一個是程式執行的位置 一個是Node的資源位置
process.execPath
/usr/local/bin/node
獲取CPU架構
如果妳朋友不知道他電腦是幾位元的時候你可以包一個這隻程式,就可以馬上知道(裝逼)
process.arch
x64 //or x86