Всем привет, недавно столкнулся с проблемой - рабочий ноутбук начал непривычно шуметь системой охлаждения. В диспетчере задач наблюдал следующую картину:

Никаких других окон, кроме пустого проекта открыто не было. На StackOverflow, было предложено запустить без расширений и посмотреть потребление (идентичное в моём случае), отключить автообновление расширений, но мне эти способы не помогли.
В какой — то момент решил сыграть в «Дженгу» — остановить процесс, нагружающий компьютер и посмотреть, что «отвалится».
Внезапно — на первый взгляд ничего: ни тема не слетела, ни проекты на EIDE не перестали компилироваться, все работало штатно, даже отладчик Cortex‑Debuger.
Но не работает Marketplace.
Он не отображает список установленных Расширений (они всегда в 0) и не позволяет их отключать/подключать.
Но зато ЦПУ загружен на 10 — 12% в режиме простоя, кулеры сами по себе перестали работать спустя 30 секунд.
Но ведь это не по‑программистски каждый раз в Диспетчер задач залезать, открывать дерево процессов, останавливать Marketplace, ведь так?
Нужен скрипт, который можно добавить в tasks.json
$vsCodeProcess = Get-Process | Sort-Object -Property CPU -Descending | Select-Object -First 1 if($vsCodeProcess.Name -eq "Code") { Stop-Process -Id $vsCodeProcess.Id -Force Write-Host $vsCodeProcess.Name "Successfully stopped" } else{ Write-Host "No Code to stop" $secondMostConsumingProcess = Get-Process | Sort-Object -Property CPU -Descending | Select-Object -Skip 1 -First 1 if($secondMostConsumingProcess.Name -eq "Code") { Stop-Process -Id $secondMostConsumingProcess.Id -Force Write-Host $secondMostConsumingProcess.Id "Successfully stopped" } }
Сначала я рассчитывал, что всегда на вершине сортированного списка процессов по потреблению ЦПУ будет именно VS Code, но так было не всегда, поэтому добавил проверку по имени приложения и повторный поиск.
Осталось запустить скрипт. В tasks.json добавляем следующее, предварительно создав в папке файл "taskkill.ps1" в моем случае.
{ "label": "Run PowerShell Script", "type": "shell", "command": "powershell.exe", "args": ["-File", "${workspaceFolder}/taskkill.ps1"], "group": { "kind": "build", "isDefault": true } }
Теперь, когда task создана, ее можно вызвать через Ctrl + Shift + P

После нажатия "Enter" находим нашу задачу и вызываем ее:


Попытка номер 2:

Результаты:

Диспетчер задач теперь отображает наиболее грузящими процессор служебные задачи:

Marketplace недоступен, но расширения работают (Тема OneDark Pro не слетела, проект в EIDE компилируется, шьется в микроконтроллер и работает Cortex-Debug):

Всем спасибо, что дочитали до конца, прошу поделиться, как можно улучшить данный способ, например, сделать запуск скрипта автоматическим при запуске VS Code, параметр "onStartup": "Run PowerShell Script" в tasks.json мне не помог.
upd: код PowerShell скрипта поправил, не все строчки скопировал из файла сначала
