U Flutter, ako želite izvršiti određenu radnju nakon navedenog timeout, možete koristiti Future.delayed
funkciju zajedno s ključnim riječima async
i await
. Evo primjera:
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');
}
}
U ovom primjeru, kad se pritisne gumb, performActionWithTimeout
poziva se funkcija. Unutar ove funkcije koristimo se await Future.delayed(Duration(seconds: 3))
za uvođenje odgode od 3 sekunde. Nakon odgode, radnja je završena.
Radnju unutar funkcije možete zamijeniti performActionWithTimeout
željenom operacijom. Ovaj timeout mehanizam može biti od pomoći kada želite odgoditi radnju bez blokiranja nit korisničkog sučelja.
Imajte na umu da ako je bilo ažuriranja ili novih paketa povezanih s timeout nakon Flutter mog zadnjeg ažuriranja, možda biste trebali istražiti i te opcije.