개발/Flutter
flutter future 병렬처리
dev_caleb
2022. 5. 19. 12:35
728x90
future를 실행하다보면 병렬처리를 해줘야할 때가 있다.
예를 들어
//await getFollowers();
//await getFollowings();
progressing= false;
setState(() {});
해당구문처럼 실행하게 되면
getfollower를 모두 실행 후
getfollowing를 모두 실행 후 setstate를 하게 되어 시간이 낭비 된다.
다음과 같이 해결해보면 좋을 것 같다.
void loadData() async{
progressing= true;
setState(() {});
await Future.wait([getFollowings(), getFollowers()]);
//await getFollowers();
//await getFollowings();
progressing= false;
setState(() {});
}
Future getFollowers() async{
followerList = await userNetworkRepository.getFollowers(widget.profileUserModel);
}
Future getFollowings() async{
followingList = await userNetworkRepository.getFollowings(widget.profileUserModel);
}
728x90