coro 버전 6.06을 사용하는 Perl 코드가 있습니다.펄 코어 분할 오류
{
package AAA;
use AnyEvent::HTTP::LWP::UserAgent;
use Coro;
use Coro::AnyEvent; BEGIN { *CORE::GLOBAL::sleep = \&Coro::AnyEvent::sleep; };
sub new { return bless {} => shift };
sub main {
my ($self) = @_;
my $count = 1000;
my $h = {};
while (1) {
while (keys %$h >= $count) {
sleep 1;
}
my $task = rand(1000);
my $coro = async (
sub {
my ($self, $task) = @_;
sleep(rand(1000));
print ": $self - $coro - $task\n";
} => ($self, $task)
);
$h->{$coro} = $coro;
$coro->on_destroy(sub {
delete $h->{$coro};
undef $coro;
});
}
}
}
AAA->new->main;
때때로 (같은 하루에 1 시간)이 분할 오류 오류와 함께 실패합니다
이
내 코드입니다.어떤 버그가 있으며 어떻게 감지 할 수 있습니까?
코어 버전 6.06 – Nikita