public void SendGamePlayerSnapshot(GamePlayersSnapshot snapshot) { lock (syncObject) { if (game != null) { var players = snapshot.Players.Select(player => player.ToViewModel()).ToList(); Application.Current.Dispatcher.InvokeAsync(() => game.SendGamePlayerSnapshot(players)); } } }