STDIN을 통해 클라이언트 프로세스와 통신하는 서버 코드를 작성 중입니다. 클라이언트의 STDOUT에서 비동기 적으로 응답을받는 perl 코드 스 니펫을 작성하려고합니다. 코드 차단 버전은 다음과 같습니다.Perl - Win32 - 다른 프로세스에서 파일 핸들을 non-blocking으로 읽는 법?
sub _read_from_client
{
my ($file_handle) = @_;
while (my $line = <$file_handle>) {
print STDOUT $line;
}
return;
}
중요하게도 코드 단편은 Win32 플랫폼에서 작동해야합니다. * nix 플랫폼에 대한 많은 솔루션이 있습니다. 저는 ActivePerl 5.10을 사용하고 있습니다. Perlmonks에
http://www.perlmonks.org/?node_id=529812 나는 'sysread'와 'ioctl'을 사용하는 것에 대해별로 흥분하지 않았다. 왜냐하면 그것들은 내가 원하는 것보다 낮은 수준이기 때문이다. 다른 방법 (예 : 잘 수용된 CPAN 모듈)이 있다면 - 알고 싶습니다. – schwerwolf