async Task <RemoteProjectBuilder> CreateRemoteProjectBuilder(string projectFile) { var pid = await LoadProject(projectFile).ConfigureAwait(false); var pb = new RemoteProjectBuilder(projectFile, pid, this, connection); // Unlikely, but it may happen if (IsShuttingDown) { pb.Shutdown(); } return(pb); }
public async Task <RemoteProjectBuilder> CreateRemoteProjectBuilder(string projectFile, string sdksPath) { var builder = await LoadProject(projectFile, sdksPath).ConfigureAwait(false); var pb = new RemoteProjectBuilder(projectFile, builder, this); lock (remoteProjectBuilders) { remoteProjectBuilders.Add(pb); // Unlikely, but it may happen if (IsShuttingDown) { pb.Shutdown(); } } return(pb); }