-
Notifications
You must be signed in to change notification settings - Fork 42.9k
⛔ 100% CPU on Windows when a watched file is deleted #287800
Copy link
Copy link
Open
Labels
bugIssue identified by VS Code Team member as probable bugIssue identified by VS Code Team member as probable bugconfirmedIssue has been confirmed by VS Code Team memberIssue has been confirmed by VS Code Team memberfile-watcherFile watcherFile watcherfreeze-slow-crash-leakVS Code crashing, performance, freeze and memory leak issuesVS Code crashing, performance, freeze and memory leak issuesnodejsNodeJS support issuesNodeJS support issuesupstreamIssue identified as 'upstream' component related (exists outside of VS Code)Issue identified as 'upstream' component related (exists outside of VS Code)
Milestone
Description
Activity
Metadata
Metadata
Assignees
Labels
bugIssue identified by VS Code Team member as probable bugIssue identified by VS Code Team member as probable bugconfirmedIssue has been confirmed by VS Code Team memberIssue has been confirmed by VS Code Team memberfile-watcherFile watcherFile watcherfreeze-slow-crash-leakVS Code crashing, performance, freeze and memory leak issuesVS Code crashing, performance, freeze and memory leak issuesnodejsNodeJS support issuesNodeJS support issuesupstreamIssue identified as 'upstream' component related (exists outside of VS Code)Issue identified as 'upstream' component related (exists outside of VS Code)
Does this issue occur when all extensions are disabled?: Yes
Version: 1.108.0 (user setup)
Commit: 94e8ae2
Date: 2026-01-08T13:53:10.781Z
Electron: 39.2.7
ElectronBuildId: 12953945
Chromium: 142.0.7444.235
Node.js: 22.21.1
V8: 14.2.231.21-electron.0
OS: Windows_NT x64 10.0.26200
I wrote about it in #263718, but couldn't get the team to reopen the issue. tl;dr if a watched file is deleted, then
ReadDirectoryChangesWis called in an infinite loop, causing 100% CPU. Happened several times for me.Steps to Reproduce:
.vscode\settings.jsonon windowsReadDirectoryChangesWis called for the path 2 times by the utility serviceReadDirectoryChangesWin an infinite loop.