示例#1
0
 public static UserHistoryEntity CreateEntity(IUserHistoryItem src)
 {
     return(new UserHistoryEntity
     {
         PartitionKey = GetPartitionKey(src.UserId, DateTime.UtcNow),
         RowKey = GetRowKey(src.Date),
         UserId = src.UserId,
         Date = src.Date,
         Status = src.GameStatus.ToString(),
         Message = src.Message,
         AccountDelta = src.AccountDelta
     });
 }
        private void InsertHistoryBatchAsync()
        {
            IUserHistoryItem[] hBuffer;
            lock (this)
            {
                hBuffer = new IUserHistoryItem[_userHistoryCache.Count];
                _userHistoryCache.CopyTo(hBuffer);
                _userHistoryCache.Clear();
            }
            Thread t = new Thread(new ParameterizedThreadStart(InsertHistoryBatchTSig));

            t.Start(hBuffer);
        }
        public Task SaveUserHistory(IUserHistoryItem history)
        {
            if (history == null)
            {
                return(Task.FromResult(0));
            }

            _userHistoryCache.Add(history);
            if (_userHistoryCache.Count > _maxBuffer)
            {
                InsertHistoryBatchAsync();
            }
            return(Task.FromResult(0));
        }
示例#4
0
 public Task SaveUserHistory(IUserHistoryItem history)
 {
     throw new NotImplementedException();
 }