HTML :: DOM阻止了forks模块的工作

时间:2010-12-19 19:57:01

标签: perl fork

我遇到了一个奇怪的错误。当我同时使用HTML::DOMforks模块时,forks模块无法正常运行。

奇怪的是,这只发生在某些机器上,而不发生在其他机器上。例如:

use forks;
use HTML::DOM;

$|=1;

print "before\n";
threads->new( sub {    
    $|=1;
    print "inside\n";
} );

print "after\n";

sleep(3600);

我在标准输出中只看到beforeafter,而不是inside。它适用于标准threads,但我不想使用它。

如果我注释掉use HTML::DOM;行,它会突然开始工作。所以,我的问题是,

  1. 真的是个bug吗?
  2. 如果是错误,在哪里举报?它是HTML::DOMforks的错误,都是......?
  3. 编辑:它只发生5.8.8 perl,而不是5.10.0。

2 个答案:

答案 0 :(得分:2)

鉴于forks声称提供与threads相同的界面,我更倾向于针对forks报告HTML::DOM。特别是因为forks是深刻魔术的人,而HTML::DOM只是一个普通的日常模块。 HTML::DOM作者不太可能知道你在做什么。

答案 1 :(得分:-2)

问题“已解决”。

我在$PERLLIB$PERL5LIB中有一个奇怪的设置,它们链接到过时库的不存在的目录或目录。一旦我解决了这个问题,forks就开始正常工作了。

因此,如果您遇到与forks类似的问题,请检查您的$PERLLIB$PERL5LIB,如果它链接到应该链接的位置。