コード例 #1
0
 public static IEnumerable <LeaderboardDataEntry> GetDataLeaderboard()
 {
     lock (LeaderBoardDataLocker)
     {
         return(DataLeaderboard.Select(d => d).ToList());
     }
 }
コード例 #2
0
 public static void ClearLeaderboard()
 {
     while (!DataLeaderboard.IsEmpty)
     {
         DataLeaderboard.TryTake(out _);
     }
 }
コード例 #3
0
        //public static void ClearLeaderboardData()
        //{
        //    lock (_leaderBoardDataLocker)
        //    {
        //        _dataLeaderboard = new ConcurrentBag<LeaderboardDataEntry>();
        //    }
        //}
        public static void Update(IEnumerable <LeaderboardDataEntry> entries)
        {
            if (entries is null)
            {
                throw new System.ArgumentNullException(nameof(entries));
            }

            lock (LeaderBoardDataLocker)
            {
                ClearLeaderboard();
                entries.ToList().ForEach(e => DataLeaderboard.Add(e));
            }
        }