|
NAMEIO::Lambda::Backtrace - backtrace chains of eventsDESCRIPTIONThe module makes it easier to debug chains of events, when a lambda awaits for another, this one in turn for another, etc etc. The class "IO::Lambda::Backtrace" represents a set of such stacks, because a lambda can be awaited by more than one lambda. Each stack is an array of items where each contains the caller lambda and the invocation point. The class provides helper methods for printing this information in readable form.The module relies on the debug information about invocation points collected by "IO::Lambda". By default, there's very little information collected, so in order to increase verbosity use "IO::Lambda::DEBUG_CALLER" flag, either directly or through "$ENV{IO_LAMBDA_DEBUG} = 'caller'". If the flag is set to 1, lambdas collect invocation points. If the flag is set to 2, then also the additional perl stack trace is added. SYNOPSISuse IO::Lambda; $IO::Lambda::DEBUG_CALLER = 1; lambda { ... warn this-> backtrace-> as_text; } or from command line env IO_LAMBDA_DEBUG=caller=2 ./myscript API
AUTHORDmitry Karasik, <dmitry@karasik.eu.org>.The ideas of backtracing threads of events, and implementing backtrace objects passable through execition stack are proposed by Ben Tilly.
Visit the GSP FreeBSD Man Page Interface. |