コード例 #1
0
        internal Task <TResponse> SendRequestAndWaitResponse <TResponse>(RequestBase request) where TResponse : ResponseBase
        {
            Interlocked.Increment(ref _lastToken);
            request.Token = _lastToken;
            var requestBytes = _serializer.Serialize(request);
            var command      = new Command(CommandNames.Request, requestBytes);

            return(_requestsHandler.WaitForResponse <TResponse>(request, () => _transport.SendData(_commandParser.ToBytes(command))));
        }
コード例 #2
0
 public Task <TResponse> SendRequest <TResponse>(RequestBase request) where TResponse : ResponseBase
 {
     Interlocked.Increment(ref _lastToken);
     request.Token = _lastToken;
     return(_requestsHandler.WaitForResponse <TResponse>(request, () => Send(request)));
 }