public ResponseData DoBatchWithDic(RequestType type, Dictionary <string, string> dic) { lock (_syncLocker) { RedisCoder.CoderForDic(type, dic); var result = RedisCoder.Decoder(); if (result.Type == ResponseType.Redirect) { return((ResponseData)OnRedirect.Invoke(result.Data, OperationType.DoBatchWithDic, type, dic)); } else { return(result); } } }
public async Task <ResponseData> DoBatchWithDicAsync(RequestType type, Dictionary <string, string> dic, TimeSpan timeSpan) { return(await TaskHelper.Run(() => { lock (_syncLocker) { RedisCoder.CoderForDic(type, dic); var result = RedisCoder.Decoder(); if (result.Type == ResponseType.Redirect) { return (ResponseData)OnRedirect.Invoke(result.Data, OperationType.DoBatchWithDic, type, dic); } else { return result; } } }).WithCancellationTimeout(timeSpan)); }