Microsoft.R.Host.Client.RHost.EvaluateAsync C# (CSharp) Method

EvaluateAsync() public method

public EvaluateAsync ( string expression, REvaluationKind kind, CancellationToken cancellationToken ) : Task
expression string
kind REvaluationKind
cancellationToken System.Threading.CancellationToken
return Task
        public async Task<REvaluationResult> EvaluateAsync(string expression, REvaluationKind kind, CancellationToken cancellationToken) {
            if (_runTask == null) {
                throw new InvalidOperationException("Host was not started");
            }
            
            using (CancellationTokenUtilities.Link(ref cancellationToken, _cts.Token)) {
                try {
                    await TaskUtilities.SwitchToBackgroundThread();
                    var request = await EvaluationRequest.SendAsync(this, expression, kind, cancellationToken);
                    return await request.Task;
                } catch(OperationCanceledException ex) when (_cts.IsCancellationRequested) {
                    throw new RHostDisconnectedException(Resources.Error_RHostIsStopped, ex);
                }
            }
        }