在等待控制台ReadLine时控制台WriteLine

时间:2017-09-21 23:34:00

标签: c# console-application console.writeline console.readline

我有一个运行多个工作线程的控制台应用程序。我希望控制台输出有一个WriteLine来报告每个线程的状态。我知道我可以简单地清除,并循环我的线程以在某个时间间隔内报告它们的状态,但同时我想输入将由应用程序使用ReadLine()处理的命令。是否有一种通用的方法来维护控制台的前x行以显示滚动或更新的信息,并在它们下方有一行我可以输入命令并显示这些命令的结果?

1 个答案:

答案 0 :(得分:0)

这通常不是游戏机的工作方式。但是,您可以根据此重复问题的答案中的建议选择某种变通办法:Multithreading: simultaneous console in- and output。 建议在那里覆盖窗口的内容和/或通过逐字逐句地重新显示它来维护输入。

您还可以考虑编写一个简单的非控制台应用程序(WinForms,WPF,UWP等)来显示类似控制台的输出和输入框。

干杯