In a Dart UI, I have a button [submit] to launch a long async request. The [submit] handler returns a Future. Next, the button [submit] is replaced by a button [cancel] to a
Future.delayed
A simple way is to use Timer instead :)
Timer
Timer _timer; void _schedule() { _timer = Timer(Duration(seconds: 2), () { print('Do something after delay'); }); } @override void dispose() { super.dispose(); _timer?.cancel(); }