Async-Selector

 view release on metacpan or  search on metacpan

lib/Async/Selector/Aggregator.pm  view on Meta::CPAN

                    my ($w, %res) = @_;
                    $callback->($aggregator, $key => $res{resource});
                }
            );
            $aggregator->add($watcher);
            last if !$aggregator->active;
        }
        return $aggregator;
    }
    
    ## Treat 3 selectors like a single selector almost transparently.
    ## $w and $watcher are actually an Async::Selector::Aggregator.
    my $watcher = aggregate_watch(a => 3, b => 0, sub {
        my ($w, %res) = @_;
        handle_a($res{a}) if exists $res{a};
        handle_b($res{b}) if exists $res{b};
        $w->cancel;
    });
    
    ## In this case, the callback is called immediately and $w->cancel is called.
    

t/55-aggregation_usecase.t  view on Meta::CPAN

                my ($w, %res) = @_;
                $callback->($aggregator, $key => $res{resource});
            }
        );
        $aggregator->add($watcher);
        last if !$aggregator->active;
    }
    return $aggregator;
}

## Treat 3 selectors like a single selector almost transparently.
## $w and $watcher are actually an Async::Selector::Aggregator.
my $watcher = aggregate_watch(a => 3, b => 0, sub {
    my ($w, %res) = @_;
    handle_a($res{a}) if exists $res{a};
    handle_b($res{b}) if exists $res{b};
    $w->cancel;
});

## In this case, the callback is called immediately and $w->cancel is called.



( run in 0.568 second using v1.01-cache-2.11-cpan-a1d94b6210f )