async/await キーワードについて学んでいます。私が何をしているのか見えない 構文的にここに書いた?
次の2つの方法があります。
private async Task<string> PopupAsync()
{
String result;
using (StreamReader reader = File.OpenText(@"C:\temp\JBM_SchedulingModule.xap"))
{
Console.WriteLine("Opened file.");
txtData.Text = "Opened file.";
result = await reader.ReadToEndAsync();
}
return result;
}
と
private async void Button_Click(object sender, RoutedEventArgs e)
{
txtData.Text = await PopupAsync();
}
ボタンを押すとメインの UI スレッドがフリーズしますが、フリーズしたくありません。理由と修正方法を理解しようとしています。
ありがとう!