![]() |
1
5
不确定Parallel::ForkManager实现,但如果它与标准fork()类似,则返回0,因为您在子进程中。fork将只向父进程返回非零PID。 我忘了添加,因为在开始调用之后有了“和下一个”,代码的行为与预期完全一致。 注意编辑2: 由于从开始调用中删除了“and next”,父进程也在运行下载。我猜21892是父进程的PID,它将在循环中运行多次 |
![]() |
2
5
关于您在edit2下的代码: 你改变了
到
现在你的叉子做得不正确。以前只有子进程继续执行循环体,父进程接受 下一个 ,现在两者都继续执行循环体。因此,您会看到父级(21892)的PID多次执行循环。 |
![]() |
3
4
看到那条线了吗?
父级获取PID,子级将只看到0。如果要从子进程中获取PID,只需使用magic变量
更新:
对该行的引用并不意味着邀请更改该行。但是看看它,很明显$pid在后面的代码中将是0,所以它不应该让人惊讶
|
![]() |
4
0
这将为您提供子PID,并继续使用fork处理代码。 |
![]() |
drainzerrr · Go锁定结构的一部分 6 年前 |
![]() |
Azim · 使用java 8并行处理图像 6 年前 |
|
user8005765 · Karatsuba-多项式与CUDA相乘 6 年前 |
![]() |
Adi · 并行读取大型XSLT字符串 6 年前 |
![]() |
A.J · 同时运行两个python文件 6 年前 |
![]() |
Kristofer · 当索引设置为私有时,如何确保访问缓冲区是私有的 6 年前 |