目前正在学习使用Threads,并制作了一个将随机ASCII字符写入控制台窗口的控制台应用程序。我创建的方法工作得很好,但文本在大约三个半(ish)行之后停止。为什么循环会停止?不是我需要循环运行永远或任何东西,我只是好奇为什么(应该是)无限循环意外停止。这是我正在使用的代码:
static void Main(string[] args)
{
Thread ThreadKeyboard = new Thread(new ThreadStart(RandomKeyboard));
ThreadKeyboard.Start();
//Wait for input
Console.Read();
ThreadKeyboard.Abort();
}
public static void RandomKeyboard()
{
Console.WriteLine("Random Keyboard Thread Started");
while (true)
{
char key = (char)(rand.Next(25)+65);
if (rand.Next(2) == 0)
{
key = char.ToLower(key);
}
SendKeys.SendWait(key.ToString());
Thread.Sleep(rand.Next(50));
}
}