在多人Hangman游戏中可以避免线程吗?

时间:2014-02-12 04:57:36

标签: c++ multithreading qt

我希望实施一个简单的多人Hangman游戏,规则略微弯曲。

规则: 所有玩家必须同时猜测单词中的字母。无论谁猜测一个正确的字母表得到一个点,并且结束字母表的玩家获得奖励积分。 这将是关于速度。更快的正确猜测可以让你领先于其他人。

我打算使用基于Qt / QML的GUI,编程语言将是C ++。平台将是Linux。

我在想我需要:
- 用于处理用户输入的一个线程 - 第二个线程,用于并行显示其他玩家正在键入的内容 - 第三个线程,用于在每个玩家的屏幕上并行显示每个玩家的得分。

我是否需要这3个线程或者我正在咆哮错误的树?

1 个答案:

答案 0 :(得分:0)

听起来你打算让这个游戏通过网络进行通信,每个玩家都在使用他们自己的计算机并运行该程序的副本。

您应该只需要一个应用程序的线程,但您可能会认为更多的线程会让您更轻松。

您可以轻松连接来自玩家输入的信号(使用事件处理程序,或将小部件的“editingDone”信号连接到相应的逻辑,以更新分数并显示其他玩家的答案。

我认为在决定如何将应用程序正确地联网到所有实例时,你会遇到最多的问题,假设这就是你想要做的事情。但是Qt网络堆栈可以允许您进行异步网络通信,而无需手动创建新线程。