內容

名稱

IO::Pipe - 供應管線物件方法

語法

use IO::Pipe;

$pipe = IO::Pipe->new();

if($pid = fork()) { # Parent
    $pipe->reader();

    while(<$pipe>) {
	...
    }

}
elsif(defined $pid) { # Child
    $pipe->writer();

    print $pipe ...
}

or

$pipe = IO::Pipe->new();

$pipe->reader(qw(ls -l));

while(<$pipe>) {
    ...
}

說明

IO::Pipe 提供介面來建立程序之間的管線。

建構函式

new ( [READER, WRITER] )

建立一個 IO::Pipe,它是一個指向新建立符號的參考(請參閱 Symbol 套件)。IO::Pipe::new 選擇性地接受兩個參數,它們應該是受 IO::Handle 或其子類別祝福的物件。這兩個物件將用於 pipe 的系統呼叫。如果沒有給定參數,則會在新的 IO::Pipe 物件上呼叫方法 handles

這兩個控制代碼會保留在 GLOB 的陣列部分,直到呼叫 readerwriter

方法

reader ([ARGS])

物件重新受 IO::Handle 的子類別祝福,並成為管線讀取端的控制代碼。如果給定 ARGS,則會呼叫 fork,並將 ARGS 傳遞給 exec。

writer ([ARGS])

物件會重新祝福成 IO::Handle 的子類別,並成為管線寫入端的控制代碼。如果給定 ARGS,則會呼叫 fork,並將 ARGS 傳遞給 exec。

handles ()

這個方法會在 IO::Pipe::new 建構時呼叫,在新建的 IO::Pipe 物件上。它會傳回一個陣列,包含兩個祝福成 IO::Pipe::End 的物件,或其子類別。

SEE ALSO

IO::Handle

AUTHOR

Graham Barr。目前由 Perl Porters 維護。請在 https://github.com/Perl/perl5/issues 回報所有錯誤。

COPYRIGHT

版權所有 (c) 1996-8 Graham Barr <gbarr@pobox.com>。所有權利保留。這個程式是自由軟體;你可以根據與 Perl 相同的條款重新散布或修改它。