我写了这个小程序来说明我的问题:
int main(int argc, char* argv[])
{
int i = 0;
while(1)
{
std::cout << i++ << std::endl;
Sleep(1000);
}
return 0;
}
因此,如果您按住垂直滚动条(以回看日志或其他...),这个简单的程序将停止计数。
有没有办法避免这种情况?
干杯
最佳答案
不是真的。发生的事情是,按住滚动条会阻止应用程序将任何新输出写入控制台,因此它最终会在刷新 std::cout 时阻塞。这是由于 Windows 如何实现控制台而无法避免的。
关于c++ - 按住滚动条卡住 win32 控制台应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7309962/