Skip to content

Commit d05d81c

Browse files
Make RazorProjectService operations atomic
The RazorProjectService APIs (e.g. AddDocumentAsync, UpdateProjectAsync, etc.) were chunked into multiple tasks and awaits. That means that other updates to the ProjectSnapshotManager could be interleaved with them. This change ensures that the operations are atomic (as far as the ProjectSnapshotManager is concerned) by running each within a call to ProjectSnapshotManager.UpdateAsync(...). Because of other changes to make CPU-bound async work synchronous the operations themselves can be made synchronous.
1 parent 654c714 commit d05d81c

File tree

1 file changed

+191
-267
lines changed

1 file changed

+191
-267
lines changed

0 commit comments

Comments
 (0)