Mac 環境 Vue 開發 CPU 佔用率高 問題

2022-03-12 06:42:55 字數 1879 閱讀 7546

mac開發vue應用時,發現cpu風扇轉的老高。

htop檢視一下:

問題找到了,就是這個dev-server.js,node起的程序。

然後就是 dtruss -p 1230(程序id) 命名跟蹤一下這個程序,發現一直在讀取應用下的每個js檔案。

ps aux | grep node | grep -v grep | awk

'' | xargs

sudo dtruss -p

然後借用同事的ubuntu系統,問題並沒有出現。這讓我一度很沮喪。

然後聯想到是不是熱更新出的問題,然後就是跟蹤webpack原始碼,當然也是一無所獲。

後面不知咋地,使用如下命令 竟然修復了cpu占有率高的問題:

用git工具對比了一下,發現多增加了如下檔案:

再重啟應用

npm run dev
htop一下:

現在世界終於清靜了!

同樣的命令在window下執行:

$ npm install

npm warn optional skipping optional dependency: fsevents@^1.0.0

(node_modules\chokidar\node_modules\fsevents):

npm warn notsup skipping optional dependency: unsupported platform

for [email protected]: wanted (current: )

報當前系統不支援,類庫只支援macos。

總結:原因就是webpack的熱更新用到了fsevent 類庫,所以當找不到的時候,程式不會報錯,但會不停掃瞄專案下的所有js檔案。導致cpu使用率很高。

具體原因還得深入到webpack的原始碼進行檢視了。

有句話說的好,喜歡就買、不喜就分、多喝熱水、重啟試試!

所以你沒事就 npm install 試試,說不定就好了!霧

ps:  

webpack-原始碼 

native access to mac os-x fsevents

fsevents on wiki

mac 搭建Vue開發環境

1 使用的各個工具的版本為 homebrew 1 node.js npm webpack vue 2 安裝brew 開啟終端執行一下命令 usr bin ruby e curl fssl 會出現如下內容,按一下回車,輸入電腦密碼,就繼續安裝了 press return to continue or ...

熟悉Mac開發環境

一 1 command tab 不同應用程式視窗切換 2 command 同一應用程式視窗切換 3 command n 新建游標所在應用程式視窗 4 command w 關閉游標坐在應用程式 乙個 5 command q 關閉游標所在應用程式 所有 6 command c v x z 複製 貼上 剪...

Mac搭建Android開發環境

android開發的除錯可以通過模擬器和真機除錯 關於真機除錯 由於mac沒有驅動這個概念 所以大多機器可以直接用usb線連線mac 從而除錯 但是,也有部分機器無法直接使用,比如小公尺 我的就是2s 華為,那是因為adb不知道這手機的usb vendor id 解決方案 echo 0x2717 a...