如果你也遇到VSCode的CPU占用過高的問題,可以嘗試使用官方自帶的插件Bisect(擴展二分查找)功能來查找具體是哪個擴展出了問題。
找到“糟糕”的擴展可能很容易,也可能很困難。
打開擴展視圖 (?Ctrl+Shift+X?),禁用擴展,重新加載窗口 (開發人員:重新加載窗口),然后檢查問題是否仍然存在。
如果問題消失,則該擴展是“壞的”,您就完成了。
否則,重新啟用這個擴展并對下一個擴展重復該過程。
如果幸運的話,第一個擴展是“壞”的;如果你運氣不好,這是最后一次延期。使用計算機科學語言,這意味著通過N擴展,您會遇到重復該過程的最壞情況O(N)(N 階),以及平均情況O(N/2)。因為該算法是由人類(您)操作的,所以即使很小的值也N很費力。這就是擴展 bisect實用程序派上用場的地方。
VS Code 中的擴展 bisect 實用程序受到git bisect命令的啟發。對于熟悉 Git 的人來說,此命令有助于找出存儲庫中的哪個提交引入了問題。
讓我們使用一個示例:我安裝了 24 個擴展,第 8 個擴展是“壞”的。我們知道迭代方法需要 8 個步驟。
Bisect?呢?
假設有 24 個擴展,Bisect 將 24 個擴展分成兩半,每半有 12 個擴展,并且禁用后半部分的所有 12 個擴展....
在每一步中,bisect 都會將搜索空間減少一半。這些步驟現在以對數時間運行,從而產生平均和最壞情況下的性能O(log N)。這非常好,因為它的擴展性很好。如果有 24 個擴展,您需要 4 到 5 個步驟才能找到“壞”擴展,如果有 38 個擴展,則只需要多 1 個步驟。
解決辦法操作
通過“Help: Start Extension Bisect?”命令啟動插件Bisect?,然后選擇“can't reproduce表示CPU不再高企沒有問題了”或“can reproduce還是有問題”,直到識別出“不良”擴展。一旦確定,您可以選擇報告該擴展的問題。
原文更多Vscode插件相關:https://www.jdon.com/67841.html