当我只使用一个内核时,为什么我看到同一个脚本运行这么多python进程(在RHEL 6上的htop中)?

对于每个任务,我初始化一个管理处理的worker类。它初始化其他类,但不初始化任何子进程:
tasks = multiprocessing.JoinableQueue()
results = multiprocessing.Queue()
num_consumers = 1
consumers = [Consumer(tasks, results) for i in xrange(num_consumers)]
for i, consumer in enumerate(consumers):
logger.debug('Starting consumer %s (%i/%i)' % (consumer.name, i + 1, num_consumers))
consumer.start()注意,atop显示了预期的进程数(在本例中,父进程为1个,子进程为1个)。MEM的总和通常超过100%,所以我想我误解了多进程或htop的工作方式。
发布于 2017-08-09 08:24:07
我相信你看到的助手线程是由你的应用程序中的主pid中的多处理模块启动的。这些是对您显式启动的线程/进程的补充。
https://stackoverflow.com/questions/28903946
复制相似问题