diff options
Diffstat (limited to 'src/csharp/Grpc.Core/Internal/ClientStreamingInputObserver.cs')
-rw-r--r-- | src/csharp/Grpc.Core/Internal/ClientStreamingInputObserver.cs | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/csharp/Grpc.Core/Internal/ClientStreamingInputObserver.cs b/src/csharp/Grpc.Core/Internal/ClientStreamingInputObserver.cs index fb59e86e2d..859f2ee027 100644 --- a/src/csharp/Grpc.Core/Internal/ClientStreamingInputObserver.cs +++ b/src/csharp/Grpc.Core/Internal/ClientStreamingInputObserver.cs @@ -47,9 +47,10 @@ namespace Grpc.Core.Internal public void OnCompleted() { - + var taskSource = new AsyncCompletionTaskSource(); + call.StartSendCloseFromClient(taskSource.CompletionDelegate); // TODO: how bad is the Wait here? - call.SendCloseFromClientAsync().Wait(); + taskSource.Task.Wait(); } public void OnError(Exception error) @@ -59,8 +60,10 @@ namespace Grpc.Core.Internal public void OnNext(TWrite value) { + var taskSource = new AsyncCompletionTaskSource(); + call.StartSendMessage(value, taskSource.CompletionDelegate); // TODO: how bad is the Wait here? - call.SendMessageAsync(value).Wait(); + taskSource.Task.Wait(); } } } |