public ResponseData DoBatchWithList(RequestType type, string id, List <string> list) { lock (_syncLocker) { RedisCoder.CoderForList(type, id, list); var result = RedisCoder.Decoder(); if (result.Type == ResponseType.Redirect) { return((ResponseData)OnRedirect.Invoke(result.Data, OperationType.DoBatchWithList, type, list)); } else { return(result); } } }
public async Task <ResponseData> DoBatchWithListAsync(RequestType type, string id, IEnumerable <string> list, TimeSpan timeSpan) { return(await TaskHelper.Run(() => { lock (_syncLocker) { RedisCoder.CoderForList(type, id, list); var result = RedisCoder.Decoder(); if (result.Type == ResponseType.Redirect) { return (ResponseData)OnRedirect.Invoke(result.Data, OperationType.DoBatchWithList, type, list); } else { return result; } } }).WithCancellationTimeout(timeSpan)); }