Skip to content

[Responsiveness] Roslyn initialization is forced onto the UI thread, forcing the project system to synchronize initialize it (6.9% of solution open) #55297

@davkean

Description

@davkean

IWorkspaceProjectContextFactory.CreateProjectContextAsync is forced on the UI thread via Roslyn during solution load. UI thread is scarce resource during solution load and this means that Roslyn is prevented from being initialized until each project synchronously blocks on it in PrioritizedOnAfterOpenProject.

The project system would like to overlap this initialization so that we can make use of as many cores as possible during load.

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions