Ejemplo n.º 1
0
        public override async Task DuplexStreamingServerMethod(IAsyncStreamReader <StreamBuffer> requestStream, IServerStreamWriter <StreamBuffer> responseStream,
                                                               ServerCallContext context)
        {
            _busyFlag.Increment();

            await using var connection = new GrpcServiceConnection(requestStream, responseStream, _logger);
            try
            {
                await _requestHandler.HandleAsync(connection, ChannelType.Grpc);
            }
            finally
            {
                _busyFlag.Decrement();
            }
        }
Ejemplo n.º 2
0
        public override async Task DuplexStreamingServerMethod(IAsyncStreamReader <StreamBuffer> requestStream, IServerStreamWriter <StreamBuffer> responseStream,
                                                               ServerCallContext context)
        {
            _busyFlag.Increment();
            GrpcServiceConnection connection = null;

            try
            {
                connection = new GrpcServiceConnection(requestStream, responseStream, _logger);
                await _requestHandler.HandleAsync(connection);
            }
            finally
            {
                if (connection != null)
                {
                    await connection.AllDisposeAsync();
                }
                _busyFlag.Decrement();
            }
        }