处理 Timeout: Flutter 指南和示例

在 中 Flutter,如果您想在指定的 后执行某个操作 timeout,可以将该 Future.delayed 函数与 asyncawait 关键字一起使用。 这是一个例子:

import 'package:flutter/material.dart';  
  
void main() {  
  runApp(MyApp());  
}  
  
class MyApp extends StatelessWidget {  
  @override  
  Widget build(BuildContext context) {  
    return MaterialApp(  
      home: MyHomePage(),  
   );  
  }  
}  
  
class MyHomePage extends StatelessWidget {  
  @override  
  Widget build(BuildContext context) {  
    return Scaffold(  
      appBar: AppBar(  
        title: Text('Timeout Example'),  
     ),  
      body: Center(  
        child: ElevatedButton(  
          onPressed:() {  
            performActionWithTimeout();  
          },  
          child: Text('Perform Action with Timeout'),  
       ),  
     ),  
   );  
  }  
  
  Future<void> performActionWithTimeout() async {  
    print('Action started');  
      
    // Simulate a delay of 3 seconds  
    await Future.delayed(Duration(seconds: 3));  
      
    print('Action completed after timeout');  
  }  
}  

在此示例中,当按下按钮时, performActionWithTimeout 将调用该函数。 在这个函数中,我们 await Future.delayed(Duration(seconds: 3)) 引入了 3 秒的延迟。 延迟后,动作完成。

您可以将函数中的操作替换 performActionWithTimeout 为您想要的操作。 timeout 当您想要延迟操作而不阻塞 UI 线程时, 此机制会很有帮助。

请记住,如果在我上次更新后有任何与 timeout in相关的更新或新软件包 Flutter,您可能也想探索这些选项。