使用 Python 中的 PR_SET_NAME
Using PR_SET_NAME from Python
我已经使用以下代码一段时间了:
import ctypes
me = ctypes.CDLL(None)
me.prctl(15, "meow", 0, 0, 0)
在 RHEL6 上使用 Python-2.6 这可行,将进程名称更改为“meow”。
然而,在 RHEL7 上使用 Python-3.7,经过相同的代码后,进程名称变为“m”——只是字符串的第一个字母。
怎么回事?
ctypes prctl
可能需要 8 位字符串,在 Python 3 中,您现在正在传递 Unicode。试试 me.prctl(15, b"meow", 0, 0, 0)
.
我已经使用以下代码一段时间了:
import ctypes
me = ctypes.CDLL(None)
me.prctl(15, "meow", 0, 0, 0)
在 RHEL6 上使用 Python-2.6 这可行,将进程名称更改为“meow”。
然而,在 RHEL7 上使用 Python-3.7,经过相同的代码后,进程名称变为“m”——只是字符串的第一个字母。
怎么回事?
ctypes prctl
可能需要 8 位字符串,在 Python 3 中,您现在正在传递 Unicode。试试 me.prctl(15, b"meow", 0, 0, 0)
.