问题描述
- 求各路大神帮帮忙,和时间控制有关
-
windows里,我的意思是c语言中有一个scanf语句,在运行时需要输入,但是如果用户过了一段时间都不输入,就会结束。但是,c语言是顺序执行,如果执行到scanf时,不输入,没法往下进行,执行不到判断时间那一步。。。。。。这个问题如何解决
解决方案
怎么又问这个问题!
问问题不花钱的就猛问啊(哈哈,开玩笑)
ask.csdn.net/questions/158714
你已经问过啦!请注意查看!
解决方案二:
解决的办法就是再启一个线程,它负责结束。
因为线程是异步执行的,scanf不会阻塞住它。
解决方案三:
单线程也不是不可以,可以采用内核函数WaitForMultipleObjectsEx,等待一个timer,即使scanf被阻塞,内核还是会唤醒timer的处理的。windows上的很多service都是这么做的,这个做法效率比较高。
时间: 2024-10-15 02:18:07