Linux 上的多进程名称

Linux 上的多进程名称

我正在使用 Python 的多处理包可以方便地自行命名工作进程。我可以从 Python 脚本中访问这些名称以进行调试。但是,我想从 shell 中执行此操作,或者htopps -aux显示调用这些进程的命令,这是python test.py为了全部进程。有没有办法在 dash 中获取与下面相同的进程名称?

import multiprocessing as mp
import time

class MyWorker:
    def __init__(self, x):
        self.x = x

    def square(self):
        time.sleep(30)
        return self.x**2

pool = mp.Pool(4)
nums = [i for i in range(10)]
workers = [MyWorker(x) for x in nums]
tasks = []

for worker in workers:
    pending = pool.apply_async(worker.square)
    tasks.append(pending)
[print(proc.name) for proc in mp.active_children()]
results = [result.get() for result in tasks]
pool.close()
pool.join()

这产生

ForkPoolWorker-3
ForkPoolWorker-2
ForkPoolWorker-4
ForkPoolWorker-1

/proc/{your_pid_here}/cmdline我知道如果您已经有可用的 pid您可以去,但我正在查看数百个进程,因此最好使用概述这样的列表。

相关内容