为什么在 ubuntu 上 top 找不到我的 python 进程?

为什么在 ubuntu 上 top 找不到我的 python 进程?

我正在运行 Kubuntu (ubuntu),并且通过终端执行了两个命令行应用程序。我的用户是“martin”。在“top”窗口中,我看不到我的 python3 进程:

python3 command-line-1
python3 command-line-2

请参阅附件。

在此处输入图片描述

答案1

看看你是否可以使用它们

ps -af | grep python3

否则,如果 Python 代码使用其中一个os.exec*()调用,则相同的过程将继续,但运行 exec 的命令,即您将在top或中看到的命令ps。您可以这样确认:

  1. 将命令作为后台进程启动并恢复其 pid

    python3 [whatever}  & echo Python3 started as PID: $!
    
  2. ps与您获得的 PID 一起使用:

    ps -p $pid
    

如果幸运的话,你甚至可以看到它“变形”:

#! /bin/bash

python3 {whatever} & pid=$!
for i in {1..10}
do
    ps -p $pid || exit 1
    sleep .2  # adjust for speed
done

相关内容