Flutter_Dart中的异步
在Dart和Flutter中,异步编程主要是通过Future
和async/await
关键字实现的。Future
表示一个未来会完成的任务,可以通过then
方法添加回调来在任务完成后执行代码。async/await
是编写异步代码的语法糖,使得异步代码看起来和同步代码相似。
下面是一个使用async/await
的例子,它调用一个异步函数来获取数据,并在数据获取完成后打印结果:
import 'dart:io';
Future<String> fetchData() async {
// 模拟网络请求,使用Future.delayed模拟异步操作
await Future.delayed(Duration(seconds: 2));
return 'Hello, World!';
}
void main() async {
try {
String data = await fetchData();
print(data);
} catch (e) {
print('Error: $e');
}
}
在这个例子中,fetchData
函数是一个异步函数,它返回一个Future<String>
。使用await
关键字,我们可以在main
函数中等待这个异步操作完成,并直接使用获取到的数据。如果发生错误,异常将被捕获并打印出来。
评论已关闭