X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FThread%2FCleanup.pm;h=7d0d73eed27acf193de9000368755b0ddb48eeaa;hb=4f0afe4e928095f816cf61ea056c092764df6ab5;hp=e9f3e92059ab6ede92e19aef61d2687f37f701d5;hpb=f4b08a8e448285acab84bc4fc755ae8ee524fecf;p=perl%2Fmodules%2FThread-Cleanup.git diff --git a/lib/Thread/Cleanup.pm b/lib/Thread/Cleanup.pm index e9f3e92..7d0d73e 100644 --- a/lib/Thread/Cleanup.pm +++ b/lib/Thread/Cleanup.pm @@ -11,14 +11,14 @@ Thread::Cleanup - Hook thread destruction. =head1 VERSION -Version 0.01 +Version 0.04 =cut our $VERSION; BEGIN { - $VERSION = '0.01'; + $VERSION = '0.04'; require XSLoader; XSLoader::load(__PACKAGE__, $VERSION); } @@ -42,24 +42,27 @@ It acts globally on all the threads that may spawn anywhere in your program, wit =head1 FUNCTIONS -=head2 C +=head2 C -Specify that the C will have to be called (in void context, without arguments) every time a thread finishes is job. + register { ... }; + ®ister($coderef); + +Specify that the given block or code reference C<$coderef> will have to be called (in void context, without arguments) every time a thread finishes its job. More precisely, =over 4 =item * -it will always be called before the join for joined threads ; +it will always be called before the joining for joined threads ; =item * -it will be called for detached threads only if they terminate before the main thread, and the hook will then fire at C time ; +it will be called for detached threads if and only if they terminate before the main thread, and the hook will then fire at C time ; =item * -it won't trigger for the the destruction of the main thread. +it won't trigger for the destruction of the main thread. =back @@ -103,7 +106,7 @@ Inspired by a question from TonyC on #p5p. =head1 COPYRIGHT & LICENSE -Copyright 2009 Vincent Pit, all rights reserved. +Copyright 2009,2010 Vincent Pit, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.