[Moscow.pm] Простые однотипные операции с AnyEvent

Ivan Petrov i.petro.77.00 на gmail.com
Чт Авг 9 00:13:17 PDT 2012


> Приветствую!

> Время от времени при написании (интеграционных?) тестов чего-то с эниэвентом
> возникает почти одинаковая портянка:

> my $cv = AnyEvent->condvar;
> my $tm = AnyEvent->timer( after => 10, cb => sub { $cv->croak("Timeout"); };
> do_something( sub{ $cv->send(shift); }, sub{ $cv->croak(shift); } );
> my $result = $cv->recv();
> undef $tm;
> analyze_do_something( $result );

> Чешутся руки написать вместо этого

> my $result = ae_recv {
> do_something( ae_send, ae_croak );
> } 10; # timeout
> analyze_do_something( $result );

> Соответственно, вопрос:
> 1) А есть ли уже такой интерфейс?
> 2) Нужен ли он кому-то ещё?

если будет соответствующе оформлен, то хороший будет модуль.
только кроме ae_send, очевидно надо еще обязательно приделать ae_begin
и ae_end.

потому что очень много групповых тестов, вроде того "делаем 5
одновременных запросов"


Подробная информация о списке рассылки Moscow-pm