Skip to content

Instantly share code, notes, and snippets.

@tempire
Last active August 29, 2015 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tempire/9158723 to your computer and use it in GitHub Desktop.
Save tempire/9158723 to your computer and use it in GitHub Desktop.
Mojo::IOLoop->delay->steps(
sub { ... },
sub {
my $delay = shift;
Mojo::IOLoop->timer(3 => sub { $delay->pass(-s1) });
},
# concurrent steps
[
sub {
my $delay = shift;
my $s1 = shift;
Mojo::IOLoop->timer(3 => sub { $delay->pass(-c1) });
},
sub {
my $delay = shift;
my $s1 = shift;
Mojo::IOLoop->timer(3 => sub { $delay->pass(-c2) });
},
sub {
my $delay = shift;
my $s1 = shift;
Mojo::IOLoop->timer(3 => sub { $delay->pass(-c3) });
}
],
# Called after 3 seconds
sub {
my ($delay, $c1, $c2, $c3) = @_;
Mojo::IOLoop->timer(3 => $delay->begin);
},
sub { ... }
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment