如果我评论Console.ReadLine(),则只打印0。但当我取消注释时,所有99个数字都被打印出来。 readline做什么?很难掌握这个。
[2017-12-12 10:26:02,583] ERROR [ReplicaFetcherThread-0-1], Error for partition [__consumer_offsets,22] to broker 1:org.apache.kafka.common.errors.NotLeaderForPartitionException: This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
答案 0 :(得分:4)
Console.ReadLine()
导致主线程阻塞,直到用户输入内容,这允许另一个线程完成其任务。没有它,主线程,因此程序在任务有机会完成之前终止
答案 1 :(得分:2)
Console.ReadLine()
正在尝试获取输入(可能来自用户)。所以它在等待时停止程序。在这种情况下,LongTask()
正在运行,打印0到99。
如果您注释掉Console.ReadLine()
,Main()
功能退出,程序结束,LongTask()
有时间打印所有数字。