AnyEvent-Fork-RPC
view release on metacpan or search on metacpan
This is why the asynchronous backend explicitly calls "CORE::exit"
when it is done (under other circumstances, such as when there is an
I/O error and there is outstanding data to write, it will log a
fatal message via AnyEvent::Log, also causing the program to exit).
You can override this by specifying a function name to call via the
"done" parameter instead.
ADVANCED TOPICS
Choosing a backend
So how do you decide which backend to use? Well, that's your problem to
solve, but here are some thoughts on the matter:
Synchronous
The synchronous backend does not rely on any external modules (well,
except common::sense, which works around a bug in how perl's warning
system works). This keeps the process very small, for example, on my
system, an empty perl interpreter uses 1492kB RSS, which becomes
2020kB after "use warnings; use strict" (for people who grew up with
C64s around them this is probably shocking every single time they
see it). The worker process in the first example in this document
You can override this by specifying a function name to call via the C<done>
parameter instead.
=back
=head1 ADVANCED TOPICS
=head2 Choosing a backend
So how do you decide which backend to use? Well, that's your problem to
solve, but here are some thoughts on the matter:
=over 4
=item Synchronous
The synchronous backend does not rely on any external modules (well,
except L<common::sense>, which works around a bug in how perl's warning
system works). This keeps the process very small, for example, on my
system, an empty perl interpreter uses 1492kB RSS, which becomes 2020kB
( run in 1.166 second using v1.01-cache-2.11-cpan-de7293f3b23 )