当一个线程同步执行一个本可以被等待的异步方法(例如,一个耗时的网络操作),该线程将无法被重用。但是,这个线程是否会在空闲时浪费CPU资源呢?或者.NET / 操作系统是否知道一个线程当前正在主动等待,并且不会将其分配给CPU?
这是不言而喻的,但请不要写出这样的代码。
string result = DownloadStringAsync().Result // will I be wasting CPU resources as well or just blocking the current thread?
这是不言而喻的,但请不要写出这样的代码。