diff options
author | gregor herrmann <gregoa@debian.org> | 2022-10-11 18:03:44 +0200 |
---|---|---|
committer | gregor herrmann <gregoa@debian.org> | 2022-10-11 18:03:44 +0200 |
commit | e79de27236c98a9c249461b860423e12868f6522 (patch) | |
tree | b3ee3d3cff081c2c4e54f380117068fce69141e0 /lib/MCE/Core/Input | |
parent | 1018516619181607363e0ec4cffac8702ab9c8fd (diff) |
New upstream version 1.880
Diffstat (limited to 'lib/MCE/Core/Input')
-rw-r--r-- | lib/MCE/Core/Input/Generator.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Handle.pm | 7 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Iterator.pm | 8 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Request.pm | 8 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Sequence.pm | 7 |
5 files changed, 20 insertions, 14 deletions
diff --git a/lib/MCE/Core/Input/Generator.pm b/lib/MCE/Core/Input/Generator.pm index 8a0fffe..a42c38b 100644 --- a/lib/MCE/Core/Input/Generator.pm +++ b/lib/MCE/Core/Input/Generator.pm @@ -15,7 +15,7 @@ package MCE::Core::Input::Generator; use strict; use warnings; -our $VERSION = '1.879'; +our $VERSION = '1.880'; ## Items below are folded into MCE. @@ -220,7 +220,7 @@ MCE::Core::Input::Generator - Sequence of numbers (for task_id > 0) =head1 VERSION -This document describes MCE::Core::Input::Generator version 1.879 +This document describes MCE::Core::Input::Generator version 1.880 =head1 DESCRIPTION diff --git a/lib/MCE/Core/Input/Handle.pm b/lib/MCE/Core/Input/Handle.pm index 229f288..1636411 100644 --- a/lib/MCE/Core/Input/Handle.pm +++ b/lib/MCE/Core/Input/Handle.pm @@ -14,7 +14,7 @@ package MCE::Core::Input::Handle; use strict; use warnings; -our $VERSION = '1.879'; +our $VERSION = '1.880'; ## Items below are folded into MCE. @@ -48,6 +48,7 @@ sub _worker_read_handle { _croak('MCE::_worker_read_handle: (user_func) is not specified') unless (defined $self->{user_func}); + my $_is_MSWin32 = ($^O eq 'MSWin32') ? 1 : 0; my $_DAT_LOCK = $self->{_dat_lock}; my $_QUE_R_SOCK = $self->{_que_r_sock}; my $_QUE_W_SOCK = $self->{_que_w_sock}; @@ -69,6 +70,7 @@ sub _worker_read_handle { $_DAT_LOCK = $self->{'_mutex_'.( $self->{_wid} % 5 + 1 )}; } $_dat_ex = sub { + MCE::Util::_sock_ready($_DAT_LOCK->{_r_sock}) if $_is_MSWin32; MCE::Util::_sysread($_DAT_LOCK->{_r_sock}, my($b), 1), $_DAT_LOCK->{ $_pid } = 1 unless $_DAT_LOCK->{ $_pid }; }; @@ -110,6 +112,7 @@ sub _worker_read_handle { ## Obtain the next chunk_id and offset position. $_dat_ex->() if $_lock_chn; + MCE::Util::_sock_ready($_QUE_R_SOCK) if $_is_MSWin32; MCE::Util::_sysread($_QUE_R_SOCK, $_next, $_que_read_size); ($_chunk_id, $_offset_pos) = unpack($_que_template, $_next); @@ -280,7 +283,7 @@ MCE::Core::Input::Handle - File path and Scalar reference input reader =head1 VERSION -This document describes MCE::Core::Input::Handle version 1.879 +This document describes MCE::Core::Input::Handle version 1.880 =head1 DESCRIPTION diff --git a/lib/MCE/Core/Input/Iterator.pm b/lib/MCE/Core/Input/Iterator.pm index 9417e92..b0666e5 100644 --- a/lib/MCE/Core/Input/Iterator.pm +++ b/lib/MCE/Core/Input/Iterator.pm @@ -14,7 +14,7 @@ package MCE::Core::Input::Iterator; use strict; use warnings; -our $VERSION = '1.879'; +our $VERSION = '1.880'; ## Items below are folded into MCE. @@ -29,8 +29,6 @@ no warnings qw( threads recursion uninitialized ); ## ############################################################################### -my $_is_MSWin32 = ( $^O eq 'MSWin32' ) ? 1 : 0; - sub _worker_user_iterator { my ($self) = @_; @@ -40,6 +38,7 @@ sub _worker_user_iterator { _croak('MCE::_worker_user_iterator: (user_func) is not specified') unless (defined $self->{user_func}); + my $_is_MSWin32 = ($^O eq 'MSWin32') ? 1 : 0; my $_chn = $self->{_chn}; my $_DAT_LOCK = $self->{_dat_lock}; my $_DAT_W_SOCK = $self->{_dat_w_sock}->[0]; @@ -55,6 +54,7 @@ sub _worker_user_iterator { # inlined for performance $_dat_ex = sub { + MCE::Util::_sock_ready($_DAT_LOCK->{_r_sock}) if $_is_MSWin32; MCE::Util::_sysread($_DAT_LOCK->{_r_sock}, my($b), 1), $_DAT_LOCK->{ $_pid } = 1 unless $_DAT_LOCK->{ $_pid }; }; @@ -128,7 +128,7 @@ MCE::Core::Input::Iterator - Iterator reader =head1 VERSION -This document describes MCE::Core::Input::Iterator version 1.879 +This document describes MCE::Core::Input::Iterator version 1.880 =head1 DESCRIPTION diff --git a/lib/MCE/Core/Input/Request.pm b/lib/MCE/Core/Input/Request.pm index 1d0ca24..3fb88dc 100644 --- a/lib/MCE/Core/Input/Request.pm +++ b/lib/MCE/Core/Input/Request.pm @@ -14,7 +14,7 @@ package MCE::Core::Input::Request; use strict; use warnings; -our $VERSION = '1.879'; +our $VERSION = '1.880'; ## Items below are folded into MCE. @@ -29,8 +29,6 @@ no warnings qw( threads recursion uninitialized ); ## ############################################################################### -my $_is_MSWin32 = ( $^O eq 'MSWin32' ) ? 1 : 0; - sub _worker_request_chunk { my ($self, $_proc_type) = @_; @@ -40,6 +38,7 @@ sub _worker_request_chunk { _croak('MCE::_worker_request_chunk: (user_func) is not specified') unless (defined $self->{user_func}); + my $_is_MSWin32 = ($^O eq 'MSWin32') ? 1 : 0; my $_chn = $self->{_chn}; my $_DAT_LOCK = $self->{_dat_lock}; my $_DAT_W_SOCK = $self->{_dat_w_sock}->[0]; @@ -57,6 +56,7 @@ sub _worker_request_chunk { # inlined for performance $_dat_ex = sub { + MCE::Util::_sock_ready($_DAT_LOCK->{_r_sock}) if $_is_MSWin32; MCE::Util::_sysread($_DAT_LOCK->{_r_sock}, my($b), 1), $_DAT_LOCK->{ $_pid } = 1 unless $_DAT_LOCK->{ $_pid }; }; @@ -199,7 +199,7 @@ MCE::Core::Input::Request - Array reference and Glob reference input reader =head1 VERSION -This document describes MCE::Core::Input::Request version 1.879 +This document describes MCE::Core::Input::Request version 1.880 =head1 DESCRIPTION diff --git a/lib/MCE/Core/Input/Sequence.pm b/lib/MCE/Core/Input/Sequence.pm index ec37923..4db1460 100644 --- a/lib/MCE/Core/Input/Sequence.pm +++ b/lib/MCE/Core/Input/Sequence.pm @@ -14,7 +14,7 @@ package MCE::Core::Input::Sequence; use strict; use warnings; -our $VERSION = '1.879'; +our $VERSION = '1.880'; ## Items below are folded into MCE. @@ -41,6 +41,7 @@ sub _worker_sequence_queue { _croak('MCE::_worker_sequence_queue: (user_func) is not specified') unless (defined $self->{user_func}); + my $_is_MSWin32 = ($^O eq 'MSWin32') ? 1 : 0; my $_DAT_LOCK = $self->{_dat_lock}; my $_QUE_R_SOCK = $self->{_que_r_sock}; my $_QUE_W_SOCK = $self->{_que_w_sock}; @@ -60,6 +61,7 @@ sub _worker_sequence_queue { $_DAT_LOCK = $self->{'_mutex_'.( $self->{_wid} % 5 + 1 )}; } $_dat_ex = sub { + MCE::Util::_sock_ready($_DAT_LOCK->{_r_sock}) if $_is_MSWin32; MCE::Util::_sysread($_DAT_LOCK->{_r_sock}, my($b), 1), $_DAT_LOCK->{ $_pid } = 1 unless $_DAT_LOCK->{ $_pid }; }; @@ -97,6 +99,7 @@ sub _worker_sequence_queue { ## Obtain the next chunk_id and sequence number. $_dat_ex->() if $_lock_chn; + MCE::Util::_sock_ready($_QUE_R_SOCK) if $_is_MSWin32; MCE::Util::_sysread($_QUE_R_SOCK, $_next, $_que_read_size); ($_chunk_id, $_offset) = unpack($_que_template, $_next); @@ -231,7 +234,7 @@ MCE::Core::Input::Sequence - Sequence of numbers (for task_id == 0) =head1 VERSION -This document describes MCE::Core::Input::Sequence version 1.879 +This document describes MCE::Core::Input::Sequence version 1.880 =head1 DESCRIPTION |