什么意思是futex_?

Who*_*ami 7 c linux mutex

我的申请突然停止工作.我按照命令执行,

#ps -elf  | grep aeroServ
Run Code Online (Sandbox Code Playgroud)

并得到以下输出,

#0 S binunun   5634  2300  0  80   0 -  7781 futex_ 15:41 pts/0    00:00:04
Run Code Online (Sandbox Code Playgroud)

我能够感觉到的是,应用程序没有运行,但我不明白这个过程现在处于什么状态.有人可以解释一下.

Mat*_*Mat 9

这是输出的WCHANps.

正如手册页所说:

nwchan WCHAN 进程处于休眠状态的内核函数的地址(如果需要内核函数名,请使用wchan).运行任务将在此列中显示短划线(' - ').

因此,您的进程futex_*在内核调用中被阻止(这些调用与互斥锁定/解锁和其他同步原语相关).为什么它被阻止,只有你可以通过检查代码和/或使用调试器来判断.

(有关futex的信息,请参阅Futex.)