要實現異步讀取控制臺輸入,可以使用Console.In.Peek
方法來檢查輸入緩沖區是否有可用的字符,并使用Console.In.Read
方法來讀取字符。以下是一個簡單的示例代碼來實現異步讀取控制臺輸入:
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
Console.WriteLine("請輸入內容:");
while (true)
{
if (Console.KeyAvailable)
{
char inputChar = (char)Console.In.Read();
Console.WriteLine($"已輸入:{inputChar}");
}
await Task.Delay(100);
}
}
}
在上面的示例中,我們使用了Console.KeyAvailable
屬性來檢查輸入緩沖區是否有可用的字符。如果有可用的字符,我們就使用Console.In.Read
方法來讀取字符,并顯示在控制臺上。然后使用Task.Delay
方法來實現異步等待,以使程序能夠持續監聽輸入。