Protocol-Gearman

 view release on metacpan or  search on metacpan

lib/Net/Gearman/Worker.pm  view on Meta::CPAN


   my $worker = Net::Gearman::Worker->new(
      PeerAddr => $SERVER,
   ) or die "Cannot connect - $@\n";

   $worker->can_do( 'sum' );

   while(1) {
      my $job = $worker->grab_job->get;

      my $total = sum split m/,/, $job->arg;

      $job->complete( $total );
   }

=head1 DESCRIPTION

This module combines the abstract L<Protocol::Gearman::Worker> with
L<Net::Gearman> to provide a simple synchronous concrete worker
implementation.

lib/Protocol/Gearman.pm  view on Meta::CPAN

=cut

sub unpack_packet ( $, $type, $body )
{
   my $typename = $TYPENAMES{$type} or
      croak "Unrecognised packet type $type";

   my $n_args = $ARGS_FOR_TYPE{$typename};

   return ( $typename ) if $n_args == 0;
   return ( $typename, split m/\0/, $body, $n_args );
}

=head2 parse_packet_from_string

   ( $name, @args ) = $gearman->parse_packet_from_string( $bytes );

Attempts to parse a complete message packet from the given byte string. If it
succeeds, it returns the type name and arguments. If it fails it returns an
empty list.



( run in 1.063 second using v1.01-cache-2.11-cpan-71847e10f99 )