時間のかかる処理を扱ってみましょう。
- 使用する API を
fetchWeather()
からsyncFetchWeather()
に変更する - API の処理が戻るまで CircularProgressIndicator を表示する
Dart の実行モデルはシングルスレッド・イベントループです。
そのため、そのままだと画面が固まってしまい CircularProgressIndicator は表示されません。
よって、このようにスレッドをブロックしてしまうような処理の場合は isolates を使用します。