我在容器中使用以下版本的 PS:
bash-4.2$ ps --version
ps from procps-ng 3.3.15
该命令ps -eL
显示线程名称,但它们被截断:
3972 12684 ? 00:00:00 OkHttp TaskRunn
3972 21419 ? 00:00:00 OkHttp TaskRunn
我尝试传递w
,ps -eLw
但它被忽略且没有错误。我尝试了ps -eL -F
,但它呈现的是进程名称而不是线程名称。
是否可以让这个版本ps
在宽模式下渲染线程名称?
答案1
你不能。
在 Linux 内核中,线程名称限制为 16 个字节。即 15 个字符和 C 字符串\0
( null
) 终止字符。从您的示例中也可以看出,它OkHttp TaskRunn
由 14 个字母和一个空格组成。
查看以下以了解更多信息:
线程名称是一个有意义的 C 语言字符串,其长度限制为 16 个字符,包括终止空字节('\0')