Provided by: libmce-perl_1.879-1_all bug

NAME

       MCE::Channel::ThreadsFast - Fast channel for producer(s) and many consumers

VERSION

       This document describes MCE::Channel::ThreadsFast version 1.879

DESCRIPTION

       A channel class providing queue-like and two-way communication for threads only. Locking
       is handled using threads::shared.

       This is similar to MCE::Channel::Threads but optimized for non-Unicode strings only. The
       main difference is that this module lacks freeze-thaw serialization. Non-string arguments
       become stringified; i.e. numbers and undef.

       The API is described in MCE::Channel with the sole difference being "send" and "send2"
       handle one argument.

       Current module available since MCE 1.877.

       new
           use MCE::Channel;

           # The default is tuned for one producer and many consumers.
           my $chnl_a = MCE::Channel->new( impl => 'ThreadsFast' );

           # Specify the 'mp' option for safe use by two or more producers
           # sending or recieving on the left side of the channel (i.e.
           # ->enqueue/->send or ->recv2/->recv2_nb).

           my $chnl_b = MCE::Channel->new( impl => 'ThreadsFast', mp => 1 );

QUEUE-LIKE BEHAVIOR

       enqueue
       dequeue
       dequeue_nb
       end

TWO-WAY IPC - PRODUCER TO CONSUMER

       send
       recv
       recv_nb

TWO-WAY IPC - CONSUMER TO PRODUCER

       send2
       recv2
       recv2_nb

LIMITATIONS

       The t/04_channel_threads tests are disabled on Unix platforms for Perl less than 5.10.1.
       Basically, the MCE::Channel::ThreadsFast implementation is not supported on older Perls
       unless the OS vendor applied upstream patches (i.e. works on RedHat/CentOS 5.x running
       Perl 5.8.x).

AUTHOR

       Mario E. Roy, <marioeroy AT gmail DOT com>