windows – 在perl中的fork实现

前端之家收集整理的这篇文章主要介绍了windows – 在perl中的fork实现前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在perl中执行子进程.我还希望我的代码与平台无关(对于 windows和unix都是一样的,除了像filepath等一些故障).

问题是在Windows中perl实现fork,是一个伪进程,实际上是一个线程.请参阅windows here的perl fork仿真.

它还提到了在伪进程上执行kill和exec命令时出现的问题.在不同平台上使用两个不同版本的fork是否安全,还是应该使用特定于操作系统的API?

Forks::Super已经担心并解决了很多这些可移植性问题,让你可以像我这样移植代码
use Forks::Super;

$pid = fork();
if ($pid != 0) {
   ...
   if (kill 'ZERO',$pid) { print "Job is running.\n"; }
   kill 'STOP',$pid; # or $pid->suspend
   kill 'CONT',$pid; # or $pid->resume
   kill 'TERM',$pid; # or $pid->terminate
   waitpid $pid,0;   # or $pid->wait or $pid->waitpid(0)
}

猜你在找的Windows相关文章