개발이 좋아서/Flutter가 좋아서
[Dart] 4일차_비동기 프로그래밍_async, await
zoaseo
2022. 12. 15. 13:19
1)
void main() {
// Future - 미래
// 미래에 받아올 값
Future<String> name = Future.value('코드팩토리');
Future<int> number = Future.value(1);
Future<bool> isTrue= Future.value(true);
print('함수 시작');
// 2개의 파라미터
// delayed - 지연되다.
// 1번 파라미터 - 지연할 기간 (얼마나 지연할건지) Duration
// 2번 파라미터 - 지연 시간이 지난 후 실행할 함수.
Future.delayed(Duration(seconds: 2), (){
print('Delay 끝');
});
}
2)
void main() async {
// Future - 미래
// 미래에 받아올 값
Future<String> name = Future.value('코드팩토리');
Future<int> number = Future.value(1);
Future<bool> isTrue= Future.value(true);
final result1 = await addNumbers(1, 1);
final result2 = await addNumbers(2, 2);
print('result1: $result1');
print('result2: $result2');
print('result1 + result2 = ${result1 + result2}');
}
Future<int> addNumbers(int number1, int number2) async {
print('계산 시작 : $number1 + $number2');
// 서버 시뮬레이션
await Future.delayed(Duration(seconds: 2), (){
print('계산 완료: $number1 + $number2 = ${number1 + number2}');
});
print('함수 완료 : $number1 + $number2');
return number1 + number2;
}