我在python中实现了一个游戏服务器。 GameServer类拥有多个游戏实例,每个实例都拥有多个玩家。我试图找出最佳的数据结构。有一个功能可以接收所有传入的数据,它需要在游戏中找到玩家,并更新信息。
目前,GameServer有一套GameInstances,GameInstance有一组玩家。这需要我遍历每个游戏和玩家以找到正确的游戏,我不认为这是最好的方法,因为它必须每秒运行数百次。
传入数据具有连接(从中接收数据)和消息。这意味着我为他们班级中的每个玩家存储一个连接,这样我就可以将消息发送回特定的玩家。我不能保持每个玩家连接的字数,因为它们必须按游戏实例分组。请帮助我了解最有效的结构方法。
答案 0 :(得分:2)
目前,GameServer有一套GameInstances,GameInstance有一组玩家。这需要我遍历每个游戏和玩家以找到正确的游戏,我不认为这是最好的方法,因为它必须每秒运行数百次。
你是对的!虽然我将回答您的具体问题,但您应该做的是阅读有关数据结构的内容。每个工作程序员至少要对最常见的数据结构及其性能特征有基本的了解,这一点至关重要。
根据您对问题的描述,您需要在识别每个游戏的键和描述它的对象之间维护一个映射,可能使用哈希表。