2010-12-19 2 views
0

이상한 오류가 발생했습니다. 동시에 HTML::DOMforks 모듈을 사용하면 forks 모듈이 제대로 작동하지 않습니다.HTML :: DOM이 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. 정말 버그입니까?
  2. 버그 인 경우 신고처는 어디입니까? 그것은 HTML::DOM, forks의 버그입니까?

편집 : 5.10.0이 아닌 5.8.8 perl에서만 발생합니다.

+0

나를 위해 잘 작동합니다. Linux의 Perl 5.12.2, HTML-DOM 0.045, 포크 0.34. –

+1

5.8.8 것이라고 생각합니다. 글쎄, 나는 지금 forks 모듈의 저자에게 연락하고있다. 방금 처음 여기 물었습니다. –

답변

2

threads과 동일한 인터페이스를 제공한다고하면 forks에 대해 HTML::DOM을보고해야합니다. 특히 forks이 깊은 마술을하는 사람이기 때문에 특히 HTML::DOM은 일상적인 일상 모듈입니다. 그럴 가능성이 희박한 사람 HTML::DOM 작성자는 당신이 무엇을하고 있는지 전혀 알지 못할 것입니다.

-2

문제는 "해결되었습니다."

존재하지 않는 디렉토리 또는 오래된 라이브러리가있는 디렉토리에 연결된 이상한 설정이 $PERLLIB$PERL5LIB입니다. 일단 내가 고치면, forks은 일을 시작했다.

forks과 유사한 문제가있는 경우 링크가 연결되어야하는 곳인 경우 $PERLLIB$PERL5LIB을 확인하십시오.

+1

이것은 정말로 forks와는 아무런 관련이 없습니다. PERL5LIB가 올바르지 않다면 Perl 설치 전체가 코드가 무엇이든간에 잘못된 일을 할 가능성이 있습니다. –

+0

당신이 옳습니다. 그러나 문제는 여기에서만 나타납니다. –

관련 문제