Tvarkymas: vadovas ir Timeout pavyzdys Flutter

Jei Flutter norite atlikti tam tikrą veiksmą po nurodyto timeout, galite naudoti Future.delayed funkciją kartu su async ir await raktiniais žodžiais. Štai pavyzdys:

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');  
  }  
}  

Šiame pavyzdyje, paspaudus mygtuką, performActionWithTimeout funkcija iškviečiama. Šioje funkcijoje mes naudojame await Future.delayed(Duration(seconds: 3)) 3 sekundžių delsą. Po delsimo veiksmas baigiamas.

Funkcijos veiksmą galite pakeisti performActionWithTimeout norima operacija. Šis timeout mechanizmas gali būti naudingas, kai norite atidėti veiksmą neužblokuodami vartotojo sąsajos gijos.

timeout Atminkite, kad jei po paskutinio atnaujinimo buvo kokių nors atnaujinimų ar naujų paketų Flutter, galbūt norėsite ištirti ir tas parinktis.