Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私は非常に単純なコンソールアプリを持っています。
static void Main(string[] args) { DoAsync(); Console.ReadKey(); }
ここでDoAsyncは一連のタスクを開始し、タスクの完了を待たずに戻ります。各タスクはコンソールに書き込みますが、キーを押す前に出力は表示されません。 私が使用すると、Console.ReadLineすべて正常に動作します。
DoAsync
Console.ReadLine
だから私は特異性に興味がReadKey()あります。
ReadKey()
のドキュメントからConsole.ReadKey():
Console.ReadKey()
ReadKey メソッドは、文字キーまたはファンクション キーが押されるまで待機します。つまり、ReadKey メソッドを発行するスレッドでブロックします。
実際に行うことは、ロックを取得することConsole.InternalSyncObjectです。これにより、コンソールでのそれ以上の操作ができなくなります。
Console.InternalSyncObject
メソッドは、このConsole.ReadLine()方法でスレッドをブロックしません。
Console.ReadLine()
この記事を読んで、 .NET 4.5 がインストールされていると思いますか?