Class AsyncServerStreamingCall<TResponse> (2.66.0)

public sealed class AsyncServerStreamingCall<TResponse> : IDisposable

Return type for server streaming calls.

Inheritance

object > AsyncServerStreamingCall<TResponse>

Implements

IDisposable

Namespace

Grpc.Core

Assembly

Grpc.Core.Api.dll

Type Parameter

Name Description
TResponse

Response message type for this call.

Constructors

AsyncServerStreamingCall(IAsyncStreamReader<TResponse>, Func<object, Task<Metadata>>, Func<object, Status>, Func<object, Metadata>, Action<object>, object)

public AsyncServerStreamingCall(IAsyncStreamReader<TResponse> responseStream, Func<object, Task<Metadata>> responseHeadersAsync, Func<object, Status> getStatusFunc, Func<object, Metadata> getTrailersFunc, Action<object> disposeAction, object state)

Creates a new AsyncDuplexStreamingCall object with the specified properties.

Parameters
Name Description
responseStream IAsyncStreamReader

Stream of response values.

responseHeadersAsync FuncobjectTaskMetadata

Response headers of the asynchronous call.

getStatusFunc FuncobjectStatus

Delegate returning the status of the call.

getTrailersFunc FuncobjectMetadata

Delegate returning the trailing metadata of the call.

disposeAction Actionobject

Delegate to invoke when Dispose is called on the call object.

state object

State object for use with the callback parameters.

AsyncServerStreamingCall(IAsyncStreamReader<TResponse>, Task<Metadata>, Func<Status>, Func<Metadata>, Action)

public AsyncServerStreamingCall(IAsyncStreamReader<TResponse> responseStream, Task<Metadata> responseHeadersAsync, Func<Status> getStatusFunc, Func<Metadata> getTrailersFunc, Action disposeAction)

Creates a new AsyncDuplexStreamingCall object with the specified properties.

Parameters
Name Description
responseStream IAsyncStreamReader

Stream of response values.

responseHeadersAsync TaskMetadata

Response headers of the asynchronous call.

getStatusFunc FuncStatus

Delegate returning the status of the call.

getTrailersFunc FuncMetadata

Delegate returning the trailing metadata of the call.

disposeAction Action

Delegate to invoke when Dispose is called on the call object.

Properties

ResponseHeadersAsync

public Task<Metadata> ResponseHeadersAsync { get; }

Asynchronous access to response headers.

Property Value
Type Description
TaskMetadata

ResponseStream

public IAsyncStreamReader<TResponse> ResponseStream { get; }

Async stream to read streaming responses.

Property Value
Type Description
IAsyncStreamReader

Methods

Dispose()

public void Dispose()

Provides means to cleanup after the call. If the call has already finished normally (response stream has been fully read), doesn't do anything. Otherwise, requests cancellation of the call which should terminate all pending async operations associated with the call. As a result, all resources being used by the call should be released eventually.

Remarks

Normally, there is no need for you to dispose the call unless you want to utilize the "Cancel" semantics of invoking Dispose.

GetStatus()

public Status GetStatus()

Gets the call status if the call has already finished. Throws InvalidOperationException otherwise.

Returns
Type Description
Status

GetTrailers()

public Metadata GetTrailers()

Gets the call trailing metadata if the call has already finished. Throws InvalidOperationException otherwise.

Returns
Type Description
Metadata