两个 ncurses 窗口并行运行
Posted
技术标签:
【中文标题】两个 ncurses 窗口并行运行【英文标题】:two ncurses window running parrallel 【发布时间】:2020-08-23 07:56:51 【问题描述】:我目前正在制作一个打字游戏项目,我想在顶部有一个倒计时时钟窗口,在底部运行一个打字窗口,它必须并行运行。
我现在能想到的唯一方法是多线程,我研究过它似乎我必须使用use_screen()
或use_window()
之类的东西才能在ncurses 中支持多线程。但我找不到任何关于它的例子或教程。
所以我的问题是谁能给我一个在 ncurses 中使用多线程的例子?
或者是否有不同的方法在 ncurses 中进行并行执行?
顺便说一句,我使用 c++,但任何语言都可以。
【问题讨论】:
【参考方案1】:对于您的预期用例,您可以在主线程中创建 2 个窗口。一个用于倒计时窗口,一个用于打字窗口。使用newwin
,您将获得 2 个WINDOW*
。然后您可以设置窗口的所有属性。
然后,你可以为你的倒计时窗口编写代码,
此代码将以std::async
开头,它将各自的WINDOW*
作为其参数之一。相关代码将使用给定参数将倒计时值写入窗口。
其余代码使用主窗口的输入和输出函数。
恕我直言,这将是最简单的方法。
【讨论】:
以上是关于两个 ncurses 窗口并行运行的主要内容,如果未能解决你的问题,请参考以下文章