首页 > 解决方案 > linux如何调度多个子进程?

问题描述

我想分叉数千个可以并行运行的进程以隐藏 IO 延迟。

我的程序维护了大约 2000 个子进程和一个随时等待子进程的等待线程,但似乎所有处理器都没有得到充分利用。

当我执行 htop 时,只有一些处理器被充分利用,而其他处理器则没有。

每个进程执行一个非常短的函数(大约 0.1 秒)并退出。

是因为儿童退出太早而无法通过 htop 测量以显示 CPU 利用率吗?

因为当我创建一个分叉的进程来运行无限的while循环时,我可以看到所有核心的充分利用......

我很好奇这些进程是并行执行但没有在 htop 中测量,还是它们没有并行执行..

标签: fork

解决方案


推荐阅读