思考
回合制6v6游戏,战斗场景中的战斗调度器,会依次按组筛选双方 对手 进行kill,一般情况下,写一个公共方法 kill(a,b) 即可解决。
这种方式,很容易能看出在并发模式下,会出现哪些并发问题。
举个列子
如果服务器上有100个战场,那可以开线程池并发执行kill的逻辑,除了战场的线程池,还有一个奖励的线程,就是每秒更新a|b的数据 <根据血量做一些其他属性的奖励>
有经验的一看就知道会有哪些问题,以及设计方案,避免并发问题。
但如果是这种模式呢?是否一样能很快看出并发问题?
a.kill(b);
在a对象的kill方法中完成了整个kill的逻辑。