Sub-Timebound version 1.00
==========================

Perl extension for timebound execution of a subroutine.
Useful for graceful error recovery.

NAME
	Sub::Timebound - Perl extension for timebound computations

SYNOPSIS
	     use Sub::Timebound;

	     sub fun 
	     {
	     	my $i = shift;
		if ($i =~ /7$/) {
			die "Simulated internal error\n";
		}
		while ($i) {
			$i--;
		}
		return "All is well";
	     }

	     my	$x = timeboundretry(10, 3, 5, \&fun, 10);
	     ### Returns { value => '...', status => 0(FAILURE)/1(SUCCESS) }
	     ### 'value' is the return value of fun()

	     if	($x->{status}) {
		     # SUCCESS
		     $x->{value}
	     } else {
		      #	FAILURE
	     }

DESCRIPTION
	     Module exports "timeboundretry" - this is a wrapper that watches a	function call.

	     my	$x = timeboundretry([TimeAllocated], [NumberOfAttempts], 
	     			[PauseBetweenAttempts],[CodeRef],[Param1], [Param2], ...);

	     [TimeAllocated]	     - Seconds allocated to [CodeRef] to complete
	     [NumberOfAttempts]	     - Number of attempts made to [CodeRef]
	     [PauseBetweenAttempts]  - Seconds to wait before making subsequent	attempts
	     [CodeRef]		     - Reference to subroutine
	     [Param1]...	     - Parameters to subroutine

     EXPORT

	     timeboundretry()

SEE ALSO
	     Proc::Reliable is a similar module	that addresses external	processes

INSTALLATION

To install this module type the following:

   perl Makefile.PL
   make
   make test
   make install

COPYRIGHT AND LICENCE

Put the correct copyright and licence information here.

Copyright (C) 2005 by Ramana Mokkapati

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.8.0 or,
at your option, any later version of Perl 5 you may have available.


