Я вот так считал:
http://search.cpan.org/~mons/Devel-Leak-Cb-0.04/lib/Devel/Leak/Cb.pm


2013/1/26 Konstantin S. Uvarin <[email protected]>

> Приветствую.
>
>   Не так давно возникла задача посчитать активные коллбэки в эниэвентном
> приложении (текла память). По этому поводу был написан небольшой модуль,
> однако, хочется узнать напоследок, не велосипед ли это?
>
>   Как использовать:
>
>     # in initial section
>     use Guard::Stat;
>     my $stat = Guard::Stat->new;
>
>     # when running
>     my $guard = $stat->guard;
>     my $callback = sub {
>         # now do useful stuff
>
>         $guard->finish("taken route 1");
>     };
>     # ... do whatever I need and call $callback eventually
>
>     # in diagnostic procedures started via external event
>     my $data = $stat->get_stat;
>     warn "$data->{running} instances still running";
>
> Что умеет кроме этого:
>
> * get_times - показать статистику времени исполнения запросов, если была
> дана опция want_time. Статистика приблизительная, много памяти не
> занимает, но квантили уже можно примерно посчитать.
>
> * on_level ([-]n, CODEREF) - выполнить код, если число обрабатываемых
> запросов поднялось выше/упало ниже n. Позволяет, например,
> контролировать пропускную способность и т.д.
>
> https://github.com/dallaylaen/perl-Guard-Stat
>
> --
> Konstantin S. Uvarin
>
>
> --
> Moscow.pm mailing list
> [email protected] | http://moscow.pm.org
>



-- 
Best wishes,
Vladimir V. Perepelitsa aka Mons Anderson
<[email protected]>, <[email protected]>
http://github.com/Mons
-- 
Moscow.pm mailing list
[email protected] | http://moscow.pm.org

Ответить