NAME
MCE::Subs - Exports functions mapped directly to MCE methods
VERSION
This document describes MCE::Subs version 1.850
SYNOPSIS
use MCE::Subs; ## Exports manager and worker functions only
## Getter functions are not exported by default
use MCE::Subs qw( :getter ); ## All, including getter functions
use MCE::Subs qw( :manager ); ## Exports manager functions only
use MCE::Subs qw( :worker ); ## Exports worker functions only
use MCE::Subs qw( :getter :worker ); ## Excludes manager functions
DESCRIPTION
This module exports functions mapped to MCE methods. All exported functions are prototyped, therefore allowing one to call them without using parentheses.
use MCE::Subs qw( :worker );
sub user_func {
my $wid = MCE->wid;
mce_say "A: $wid";
mce_sync;
mce_say "B: $wid";
mce_sync;
mce_say "C: $wid";
mce_sync;
return;
}
MCE->new(
max_workers => 24, user_func => \&user_func
);
mce_run 0 for (1..100); ## 0 means do not shutdown after running
For the next example, we only want the worker functions to be exported due to using MCE::Map, which takes care of creating a MCE instance and running.
use MCE::Map;
use MCE::Subs qw( :worker );
## The following serializes output to STDOUT and gathers $_ to @a.
## mce_say displays $_ when called without arguments.
my @a = mce_map { mce_say; $_ } 1 .. 100;
print scalar @a, "\n";
Unlike the native Perl functions, printf, print, and say methods require the comma after the glob reference or file handle.
MCE->printf(\*STDERR, "%s\n", $error_msg);
MCE->print(\*STDERR, $error_msg, "\n");
MCE->say(\*STDERR, $error_msg);
MCE->say($fh, $error_msg);
mce_printf \*STDERR, "%s\n", $error_msg;
mce_print \*STDERR, $error_msg, "\n";
mce_say \*STDERR, $error_msg;
mce_say $fh, $error_msg;
FUNCTIONS for the MANAGER PROCESS via ( :manager )
MCE methods are described in MCE::Core.
mce_abort
mce_do
mce_forchunk
mce_foreach
mce_forseq
mce_freeze
mce_process
mce_relay_final
mce_restart_worker
mce_run
mce_print
mce_printf
mce_say
mce_send
mce_shutdown
mce_spawn
mce_status
mce_thaw
FUNCTIONS for MCE WORKERS via ( :worker )
MCE methods are described in MCE::Core.
mce_abort
mce_do
mce_exit
mce_freeze
mce_gather
mce_last
mce_next
mce_print
mce_printf
mce_relay
mce_relay_recv
mce_say
mce_sendto
mce_sync
mce_thaw
mce_yield
GETTERS for MCE ATTRIBUTES via ( :getter )
MCE methods are described in MCE::Core.
mce_chunk_id
mce_chunk_size
mce_max_retries
mce_max_workers
mce_pid
mce_sess_dir
mce_task_id
mce_task_name
mce_task_wid
mce_tmp_dir
mce_user_args
mce_wid
INDEX
AUTHOR
Mario E. Roy, <marioeroy AT gmail DOT com>