所以我正在开发一个可以多次执行某项任务的程序。我曾经使用线程编写过程序,但现在我需要使用带有 fork() 的进程来完成它。
对于线程,我只需创建指定数量的线程,让它们执行一个函数(更改共享内存中的变量),然后最后执行一些使用共享内存中最终值的东西。
但是现在我想做同样的事情,但我不知道该怎么做,因为每次我调用 fork() 时它基本上都会翻倍。所以很明显,如果我在 forloop 中调用 fork(),那么每个父进程和子进程都会自己通过调用 fork() 的循环。
简而言之,我的问题是:如何使用 fork 创建确切数量的子进程(假设我需要 5 个子进程),并让我的父进程等到这 5 个子进程执行完毕后再继续执行?
谢谢您的帮助!