.NET async/await, собирался ли переменный мусор?

Играя с AngleSharp, я столкнулся с поведением async/await, которое Могу отнести только к сборщику мусора.

Следующий код ничего не печатает, но отладчик утверждает, что document.Title имеет значение Google.

static async Task Main(string[] args)
{
    var config = Configuration.Default.WithDefaultLoader();
    var context = BrowsingContext.New(config);
    var document = await context.OpenAsync("https://www.google.com/");
    Console.WriteLine("Title: {0} ", document.Title);
} 

Но если я сохраню свойство в переменной, оно будет работать так, как я ожидаю, печатая Title: Google.

static async Task Main(string[] args)
{
    var config = Configuration.Default.WithDefaultLoader();
    var context = BrowsingContext.New(config);
    var document = await context.OpenAsync("https://www.google.com/");
    var title = document.Title;
    Console.WriteLine("Title: {0} ", title);
} 

Это правильный путь?


person gsscoder    schedule 27.11.2019    source источник
comment
Отвечает ли это на ваш вопрос? Console.WriteLine после асинхронного вызова ожидания.   -  person Jazb    schedule 27.11.2019
comment
Ага, @Jazb. Благодарю вас! Это прекрасно объясняет происходящее.   -  person gsscoder    schedule 27.11.2019
comment
рад слышать :-)   -  person Jazb    schedule 27.11.2019
comment
Интересно, а как именно ссылка помогла? Ваш Main() был уже async Task, в отличие от метода проверки void обманщика.   -  person MickyD    schedule 27.11.2019
comment
Я больше склоняюсь к тому, что это ошибка AngleSharp. сборщик мусора не делает таких вещей, когда он работает правильно, и крайне маловероятно, что вы столкнулись с какой-либо ошибкой в ​​сборщике мусора. Чтобы это можно было объяснить каким-либо другим способом, вам необходимо создать минимально воспроизводимый пример, воспроизводящий такое же поведение без AngleSharp.   -  person Peter Duniho    schedule 27.11.2019
comment
@MickyD, это было полезно, так как использование using решило проблему удобным способом. В чем причина, мне так и не ясно...   -  person gsscoder    schedule 29.11.2019
comment
@PeterDuniho, интересно ... Таким образом, может быть, прольется свет.   -  person gsscoder    schedule 29.11.2019