跳转到内容

Perl 编程/关键字/fork

来自维基教科书,开放的书籍,用于开放的世界
上一个:foreach 关键字 下一个:format

这个fork关键字

[编辑 | 编辑源代码]

fork创建一个fork(2)调用以在相同点启动相同程序,将子进程 PID 返回给其父进程,0给子进程,或undef,如果它不成功。文件描述符有时与它们的锁共享,而其他所有内容都被复制。大多数支持fork()的系统以极高的效率实现了它。

Perl 尝试在派生子进程之前刷新所有打开的输出文件,但这可能不受某些平台支持。为了安全起见,您可能需要设置$| ($AUTOFLUSH(以英语)或调用autoflush()方法IO::Handle在所有打开的句柄上,以避免重复输出。

fork而不等待子进程会创建僵尸进程。在某些平台(如 Windows)上,fork()系统调用不可用,Perl 可以构建成在 Perl 解释器中模拟它。

  fork
$pid = fork();

if ($pid == 0) {
  print "I am the child of my parent\n";
  exit 0;
}
print "I am the parent process and have the child with the ID $pid\n";
exit 0;
返回
I am the parent process and have the child with the ID -6852
I am the child of my parent


上一个:foreach 关键字 下一个:format
华夏公益教科书