更新后(由另一个用户)但在轮询前的状态更改



假设我们有以下场景:

  1. 2个用户都发出准备玩的信号,rails应用程序接收到它并开始游戏
  2. 2个用户中的一个立即通过ajax发出"没收"(我假设这是不可能阻止的,不是吗?)
  3. 当其他用户投票确定游戏是否开始时,游戏已经结束,分数更新
  4. 用户被混淆

我不太确定这里该怎么办。谁能给我一些建议?


好了,我知道我做错了什么。(我自己还不能回答,因为我的代表太低了)

当一个用户通过投票来判断他/她的游戏是否已经开始,并接收移动等等,我检查"游戏进行中"one_answers"user = user polling"属性来判断该如何回应。但这是错误的,因为一旦结束,这个逻辑就无法找到相关的游戏来检索数据并将其返回给用户。

我现在想到的是,将"结束游戏已被投票"作为游戏对象的属性(游戏邦注:通过关系玩游戏的对象),所以如果游戏结束但尚未投票,用户将收到它,然后回应确认。

表示游戏已经结束的标志应该允许不同的值表示游戏结束的原因。当玩家1失败时,旗帜会更新为失败。然后,当玩家2投票获得状态时,他被告知被没收。

好了,我知道我哪里做错了。

当一个用户通过投票来判断他/她的游戏是否已经开始,并接收移动等等,我检查"游戏进行中"one_answers"user = user polling"属性来判断该如何回应。但这是错误的,因为一旦结束,这个逻辑就无法找到相关的游戏来检索数据并将其返回给用户。

我现在想到的是,将"结束游戏已被投票"作为游戏对象的属性(游戏邦注:通过关系玩游戏的对象),所以如果游戏结束但尚未投票,用户将收到它,然后回应确认。那么游戏将不会再次轮询。

然而,现在有一个新的问题,如果在民意调查之间有多个状态变化怎么办?

也许轮询状态是错误的?也许我需要一个缓冲队列来记录状态变化以便轮询?我还不知道。

相关内容

  • 没有找到相关文章

最新更新