Skip to content

Starting or exiting Unity causes VS Code file-watcher [1] to stay at ~25% CPU until restart when ms-dotnettools.csharp is enabled #9055

@mikehofm

Description

@mikehofm

Type: Bug

Steps to Reproduce

  1. Open a Unity project in VS Code on Windows.
  2. Make sure the C# extension (ms-dotnettools.csharp) is enabled.
  3. Open Help > Open Process Explorer in VS Code, or run code --status.
  4. Observe that shortly after startup, file-watcher [1] is near 0% CPU.
  5. While VS Code remains open, start the Unity Editor for the same project.
  6. After Unity finishes starting, or after exiting Unity, check VS Code Process Explorer / code --status again.

Expected Behavior

  • file-watcher [1] may briefly spike during Unity startup/shutdown, but it should return to near-idle once file activity settles.
  • Starting or exiting Unity should not leave VS Code's watcher process permanently hot until restart.

Actual Behavior

  • file-watcher [1] jumps to roughly 20-25% CPU and stays there indefinitely. This is on a quad-core CPU, so it's using most of one core.
  • CPU does not return to idle after Unity settles or exits.
  • Restarting VS Code resets it temporarily until the next Unity start/exit transition.

Disabling the C# extensions stops the issue. Re-enabling only ms-dotnettools.csharp is enough to reproduce it again.

I also added broad files.watcherExclude entries for Unity-generated folders/files, but the issue still reproduced with ms-dotnettools.csharp enabled.

Extension version: 2.120.3
VS Code version: Code 1.110.1 (61b3d0ab13be7dda2389f1d3e60a119c7f660cc3, 2026-03-06T23:03:27.520Z)
OS version: Windows_NT x64 10.0.19045
Modes:

Logs

C# log

Details
2026-03-07 21:52:46.467 [info] Locating .NET runtime version 10.0.0
2026-03-07 21:52:47.873 [info] Dotnet path: C:\Program Files\dotnet\dotnet.exe
2026-03-07 21:52:47.874 [info] Activating C# + C# Dev Kit...
2026-03-07 21:52:48.948 [info] [stdout] info: Program[0]
      Server started with process ID 83040

2026-03-07 21:52:53.687 [info] [stdout] {"pipeName":"\\\\.\\pipe\\d6887e42"}

2026-03-07 21:52:53.687 [info] received named pipe information from server
2026-03-07 21:52:53.688 [info] client has connected to server
2026-03-07 21:52:53.839 [info] [Program] Language server initialized
2026-03-07 21:53:03.083 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Editor.Tools.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.178 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Assembly-CSharp-Editor-firstpass.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.210 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\ShapesEditor.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.348 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\ShapesSamples.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.370 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Serializers.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.371 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Mischief.MDV.Editor.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.699 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\BGCurve.Editor.csproj loaded by C# Dev Kit
2026-03-07 21:53:09.700 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Editor.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.001 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\PrimeTween.Installer.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.001 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Extras.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.002 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.UI.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.003 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.QGUI.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.040 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\BGCurve.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.040 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Suggestors.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.061 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Parsers.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.154 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Assembly-CSharp-Editor.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.155 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Tests.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.520 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Editor.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.521 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\ShapesRuntime.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.522 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.Grammar.csproj loaded by C# Dev Kit
2026-03-07 21:53:10.522 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.csproj loaded by C# Dev Kit
2026-03-07 21:53:11.070 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Assembly-CSharp.csproj loaded by C# Dev Kit
2026-03-07 21:53:11.071 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\QFSW.QC.ScanRules.csproj loaded by C# Dev Kit
2026-03-07 21:53:11.072 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Polyperfect.Common.csproj loaded by C# Dev Kit
2026-03-07 21:53:11.242 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\AmplifyShaderEditor.csproj loaded by C# Dev Kit
2026-03-07 21:53:11.327 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\MRP.csproj loaded by C# Dev Kit
2026-03-07 21:53:11.515 [info] [serviceBroker/connect] [WorkspaceProjectFactoryService] Project E:\Unity\Projects\MRP\Assembly-CSharp-firstpass.csproj loaded by C# Dev Kit

C# LSP Trace Logs log

Details

Environment Information

VSCode version: 1.110.1
C# Extension: 2.120.3
Using OmniSharp: false

Dotnet Information .NET SDK: Version: 10.0.103 Commit: c2435c3e0f Workload version: 10.0.100-manifests.c992be6d MSBuild version: 18.0.11+c2435c3e0

Runtime Environment:
OS Name: Windows
OS Version: 10.0.19045
OS Platform: Windows
RID: win-x64
Base Path: C:\Program Files\dotnet\sdk\10.0.103\

.NET workloads installed:
There are no installed workloads to display.
Configured to use workload sets when installing new manifests.
No workload sets are installed. Run "dotnet workload restore" to install a workload set.

Host:
Version: 10.0.3
Architecture: x64
Commit: c2435c3e0f

.NET SDKs installed:
6.0.321 [C:\Program Files\dotnet\sdk]
10.0.103 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
Microsoft.AspNetCore.App 6.0.26 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 10.0.3 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 6.0.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.26 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 10.0.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 6.0.6 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.26 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 7.0.20 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 10.0.3 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
x86 [C:\Program Files (x86)\dotnet]
registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
DOTNET_CLI_UI_LANGUAGE [en-US]

global.json file:
Not found

Learn more:
https://aka.ms/dotnet/info

Download .NET:
https://aka.ms/dotnet/download

Visual Studio Code Extensions
Extension Author Version Folder Name
atlascode atlassian 4.0.22 atlassian.atlascode-4.0.22
chatgpt openai 26.304.20706 openai.chatgpt-26.304.20706-win32-x64
code-spell-checker streetsidesoftware 4.5.6 streetsidesoftware.code-spell-checker-4.5.6
copilot-chat GitHub 0.38.2 github.copilot-chat-0.38.2
cpptools ms-vscode 1.30.5 ms-vscode.cpptools-1.30.5-win32-x64
csdevkit ms-dotnettools 2.10.3 ms-dotnettools.csdevkit-2.10.3-win32-x64
csharp ms-dotnettools 2.120.3 ms-dotnettools.csharp-2.120.3-win32-x64
gitlens eamodio 17.11.0 eamodio.gitlens-17.11.0
playwright ms-playwright 1.1.17 ms-playwright.playwright-1.1.17
powershell ms-vscode 2025.4.0 ms-vscode.powershell-2025.4.0
rainbow-csv mechatroner 3.24.1 mechatroner.rainbow-csv-3.24.1
svelte-vscode svelte 109.14.2 svelte.svelte-vscode-109.14.2
vetur octref 0.37.3 octref.vetur-0.37.3
vscode-css-formatter aeschli 1.0.2 aeschli.vscode-css-formatter-1.0.2
vscode-dotnet-runtime ms-dotnettools 3.0.0 ms-dotnettools.vscode-dotnet-runtime-3.0.0
vscode-peacock johnpapa 4.2.2 johnpapa.vscode-peacock-4.2.2
vscode-yaml redhat 1.21.0 redhat.vscode-yaml-1.21.0
vsliveshare ms-vsliveshare 1.0.5959 ms-vsliveshare.vsliveshare-1.0.5959
vsliveshare-pack ms-vsliveshare 0.4.0 ms-vsliveshare.vsliveshare-pack-0.4.0
vsls-whiteboard lostintangent 0.0.12 lostintangent.vsls-whiteboard-0.0.12
vstuc visualstudiotoolsforunity 1.2.1 visualstudiotoolsforunity.vstuc-1.2.1
C# Settings
Setting Value
preferCSharpExtension false
compilerDiagnosticScope openFiles
analyzerDiagnosticScope openFiles
enableXamlTools true
useServerGC true
System Info
Item Value
CPUs Intel(R) Core(TM) i5-7500 CPU @ 3.40GHz (4 x 3408)
GPU Status 2d_canvas: enabled
GPU0: VENDOR= 0x10de, DEVICE=0x1c02 [NVIDIA GeForce GTX 1060 3GB], DRIVER_VENDOR=NVIDIA, DRIVER_VERSION=32.0.15.6094 ACTIVE
GPU1: VENDOR= 0x10de, DEVICE=0x1c02 [NVIDIA GeForce GTX 1060 3GB], DRIVER_VERSION=32.0.15.6094
GPU2: VENDOR= 0x1414, DEVICE=0x008c [Microsoft Basic Render Driver], DRIVER_VERSION=10.0.19041.5794
Machine model name:
Machine model version:
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
trees_in_viz: disabled_off
video_decode: enabled
video_encode: enabled
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) undefined
Memory (System) 31.94GB (5.97GB free)
Process Argv --crash-reporter-id 867cfbbf-b045-434b-9810-4dda7f718d33
Screen Reader no
VM 0%
A/B Experiments
vsliv368cf:30146710
binariesv615:30325510
nativeloc1:31344060
dwcopilot:31170013
dwoutputs:31242946
copilot_t_ci:31333650
e5gg6876:31282496
pythonrdcb7:31342333
6518g693:31463988
aj953862:31281341
6abeh943:31336334
envsactivate1:31464700
cloudbuttont:31379625
aihoversummaries_t:31469308
3efgi100_wstrepl:31403338
55ia6109:31457054
use-responses-api:31390855
ddidtcf:31399634
je187915:31401257
ec5jj548:31422691
cp_cls_c_966_ss:31454199
4je02754:31466945
ge8j1254_inline_auto_hint_haiku:31431912
nes-autoexp-off:31446584
a5gib710:31434435
00h15499_gpt_53_codex:31464542
7a04d226_do_not_restore_last_panel_session:31438103
31c7i317_no_change:31465101
preserve_tokens:31444547
cp_cls_c_1081:31454833
copilot-nes-oct-trt:31432596
ia-use-proxy-models-svc:31452481
a43f0574:31442827
e9c30283:31461165
test_treatment2:31471001
nes-fast-additive:31462666
control_6dc23131:31467998
9c05b404_max_request_50:31468594
idci7584:31464702
edit_mode_hidden:31461530
864ei723_large_tool_results_to_disk:31460878
notips:31471632
i54ji102:31458073
b1f5h706:31471673
nes-extended-on:31455476
chat:31457767
8hig5102:31471928
ah:31460422
jdddd261:31472041
nes-rcnt-edit:31471617
thinking_effort_h:31471653
f0268191:31471593
thinking_c:31471065

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions