首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gameserver的线程架构

Gameserver的线程架构
EN

Stack Overflow用户
提问于 2012-07-16 22:57:53
回答 2查看 686关注 0票数 1

我开始制作我的2D游戏/引擎,但不知道最好的线程架构来处理服务器端的客户端。

最初,我考虑的是每图线程的设计,而不是每用户线程的设计。但是还有另一种理想的方法吗?

在我的地图线程概念中,线程只会在地图上的玩家入口处创建,并且在它清空后不久就会被销毁。但是有了这个概念,一个有太多玩家的地图(例如,玩家商店)可能会导致严重的滞后。

使用用户线程方法时,会有大量的线程--因此,内存的分配也会很高。

那么,有没有另一种更好的方法呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-18 09:50:28

你的问题的答案是只使用一个线程来模拟多个游戏实例。由于游戏编程的复杂性和以任何有意义/安全/有益的方式划分内存访问的困难,很少有游戏从多线程中受益的情况。即使是你听说过的大型游戏的服务器,在整个游戏逻辑中也是单线程的。例如,暗黑破坏神风格的游戏将在每个核心上有一个线程,每个线程负责数百个游戏,并使用少量的跨线程(实际上是跨机器)逻辑来旋转游戏。

票数 0
EN

Stack Overflow用户

发布于 2012-07-16 23:13:53

当您的服务器有多个CPU核心时,您将从多读arch中获得一些好处。因此,如果您的游戏arch是纯事件驱动的(您从不在事件处理程序中等待任何东西),则在线程数量等于CPU核心数量的情况下会获得最佳性能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11506954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档