다른 게시물에 명시적인 예제가있는 경우 알려주십시오. 스레드에서 인터리브 인쇄에 문제가 있습니다. 모든 스레드에서 공유 변수를 사용하여 스레드를 제어하려고합니다. 아래의 의사 코드는 내 코드 조각을 강조 표시하여 문제를 일으 킵니다. 쓰레드가 인쇄 대기를하기 위해 모든 것을 시도했다. 지금은 몇 개의 출력 라인 만 파괴되고 있습니다.Perl 스레드가 올바르게 인쇄되지 않습니다.
#!/usr/bin/perl
use threads;
use threads::shared;
my $PRINTFLAG :shared = 1;
Run_Threads();
sub Do_stuff{
lock($PRINTFLAG);
cond_wait($PRINTFLAG) until $PRINTFLAG == 1;
$PRINTFLAG = 0;
print "$working\n";
$PRINTFLAG =1;
}
하위 생성 스레드.
언제나 "스레드"와 "정확하게 인쇄되지 않습니다"라는 동일한 문장에서 나는 두려움을 느끼기 시작합니다. 이것은 일반적으로 적절하게 수행하기가 어렵습니다. –