public async Task InitializeAsync(IRSessionCallback clientApp = null) { _clientApp = clientApp ?? _clientApp; Session = SessionProvider.GetOrCreate(SessionGuids.InteractiveWindowRSessionGuid); if (Session.IsHostRunning) { await Session.StopHostAsync(); } await Session.StartHostAsync(new RHostStartupInfo { Name = "RHostScript", CranMirrorName = RToolsSettings.Current.CranMirror, CodePage = RToolsSettings.Current.RCodePage, RHostCommandLineArguments = RToolsSettings.Current.LastActiveConnection.RCommandLineArguments }, _clientApp ?? new RHostClientTestApp(), 50000); }
public async Task DisposeAsync() { await _session.StopHostAsync(); _sessionProvider.Dispose(); }
public Task StopSessionAsync() => _session?.StopHostAsync(waitForShutdown: false) ?? Task.CompletedTask;
public void Dispose() { _evaluation.Dispose(); _session.StopHostAsync().ContinueWith(t => _session.Dispose()); }
public void Dispose() { _evaluation.Dispose(); _session.StopHostAsync().DoNotWait(); }