[플러터] 가 돌아가는 방식 탐구

serotonins·2023년 4월 26일
0

Develop

목록 보기
13/17

👀 Future, async, await, then

비동기 처리는 동기 처리가 모두 끝난 뒤 이루어진다.

비동기는 병렬식, 동기는 앞에 거 다 끝나고 다음 거 시작

비동기 처리는
async & await 를 사용하게 된다

void main() async {
	await 비동기함수밑에꺼().then((value) => {print(value)});
    print('아무말');
}

Future 함수이름() async { 
	함수내용; 
    await 어느 시점에 끝나게 될지 예측하기 어려운 작업;
}

async 는 이 함수는 비동기 함수다! 선언
await 은 처리를 완료하고 결과를 반환할 때까지 (해당 비동기 함수 내의)이후 코드 처리를 멈춤

Future는 await 붙은 작업을 마친 결과를 받기 위한 클래스
값이 여러개면 Future 대신 Stream

비동기 함수가 반환하는 값을 처리하려면 then() 함수를 이용한다.
error() 함수는 비동기 함수 실행되다가 오류 발생 시 예외처리용

0개의 댓글