Future

이원석·2023년 11월 20일
0

Flutter

목록 보기
19/46

Future

Future은 미래의 값을 의미.
Future은 비동기로 처리되어야 할 값을 의미한다. 예를 들어 우리가 서버로부터 데이터를 받아올때 서버로 부터 응답값을 받을때까지 우리는 기다려야 한다. 혹은 사용자가 어떤 버튼을 누를지 기다려야한다. 이럴떄 Future을 사용한다.

Future는 Future<타입명> 이런식으로 타입을 명시해야 한다.

async/await

async 함수는 무조건 future를 반환해야한다
await 키워드를 사용한 함수는 무조건 async함수여야 한다.

await 을 만나면 함수를 잠시 멈추고 함수를 호출한 곳에 future을 리턴한다.
await가 붙은 동작이 완료되기 전까지 함수를 더 이상 진행하지 않는다.
return을 통해 1번에서 주었던 future에서 return 값이 나오게 한다.
void getTodaysToons() async {
    final url = Uri.parse('$baseUrl/$today');
    final response = await http.get(url);
    if (response.statusCode == 200) {
      print(response.body);
      return;
    }
    throw Error();
  }

참조
Dumb-veloper
jintak0401.log

0개의 댓글