我无法列出与进程关联的锁以及有关锁的信息,即有多少线程共享此锁等。
请告诉我如何从进程 ID 中提取此信息。
我的情况:
我已经运行sysbench
命令
sysbench --test=threads --thread-locks=100 --max-time=20s run
我想列出 sysbench 刚刚创建的锁以及有关锁的信息,即哪些线程共享此锁等?
答案1
您可以使用以下命令获取锁定进程列表
lslocks
答案2
如果你谈论的是文件锁,
lsof -p PID
将列出进程打开的所有文件PID
。
lsof -c processname
将列出 . 打开的所有文件processname
。
请注意,lsof
还列出了仅为读取而打开的文件,即没有文件锁的文件。文件打开的模式指定为输出中 FD(文件描述符)列中的第四个字符:
r for read access;
w for write access;
u for read and write access;
space if mode unknown and no lock
character follows;
`-' if mode unknown and lock
character follows.