首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

Console检测是否有键盘输入,该怎么解决

2012-02-23 
Console检测是否有键盘输入在一个console程序中,有一个循环while(true){//dosth}如何做到我不按键盘上的键

Console检测是否有键盘输入
在一个console程序中,有一个循环
while(true)
{
//do   sth
}
如何做到我不按键盘上的键它就一直循环下去,如果我按一个键盘上的任意键,它就停止,跳出循环,就像khbit函数一样。
console.readxx都会阻塞当前线程,直到得到输入,不和我意。
至于另开一个线程,不断检测键盘输入,检测到则停掉该线程,也不太满意。
请指教。

[解决办法]
多线程+ReadKey。。。

[解决办法]
static bool cancled = false;
static void Main(string[] args)
{
Thread thread = new Thread(new ThreadStart(PrintNumber));
thread.Start();
ReadKey();
}

private static void PrintNumber()
{
int i = 0;
while (!cancled)
Console.WriteLine(i++);
}
static void ReadKey()
{
Console.Read();
cancled = true;
}
[解决办法]
while(Console.Read()==-1)
{
//do sth
}

热点排行