Skip to content

Instantly share code, notes, and snippets.

use Mojo::Base -strict;
use feature 'current_sub';
use Mojo::IOLoop;
my $concurrency = 100;
# this is dummy data, fill it with your data to be processed
my @items = (1..1000);
@aferreira
aferreira / rl.pl
Created February 8, 2017 22:34
Read lines from a file non-blocking while doing non-blocking operations
use Mojo::Base -strict;
use Mojo::IOLoop::LineReader;
use Mojo::UserAgent;
use Mojo::IOLoop;
use Data::Dump 'pp';
use File::Temp qw(tempfile :seekable);
sub run {
@jberger
jberger / URLQueue.pl
Last active November 10, 2022 20:58
Modularization of my answer from SO on URL queuing for non-blocking ua
#!/usr/bin/env perl
package Mojo::URLQueue;
use Mojo::Base 'Mojo::EventEmitter';
use Mojo::UserAgent;
has queue => sub { [] };
has ua => sub { Mojo::UserAgent->new(max_redirects => 5) };
has concurrency => 4;