使用滚动条会中断控制台应用程序

时间:2013-01-30 17:33:32

标签: c# console scroll scrollbar console-application

目前,当我在c#console应用程序上使用滚动条时,似乎暂停/中断应用程序,直到我“松开”滚动条。

有没有办法防止这种情况发生?

2 个答案:

答案 0 :(得分:1)

这是我刚刚引用的一篇旧帖子,它解释了在cmd提示符中使用滚动条时的暂停:

“从技术上讲,只有在您按住滚动条时才会暂停显示输出:控制台子系统暂时停止从输出缓冲区读取并显示它。但是,进程仍在运行,并且所述输出缓冲区填满非常快,这使得所有只要缓冲区已满,就会进一步写入()的“块”。这就是使进程看起来暂停的原因。

(请注意,有两个不同的组件 - 控制台窗口和内部运行的程序。“命令提示符”只是cmd.exe命令解释程序,但CSRSS显示窗口和滚动条。“

以下是帖子的链接:https://superuser.com/questions/344262/windows-command-prompt-pause-during-mousedown

答案 1 :(得分:0)

您需要在另一个线程中运行长时间运行的代码,然后在需要时写入控制台 - 请参阅此帖子:Using .NET BackgroundWorker class in console app