我需要做一些特别的事情来使用 NPTL 而不是 pthreads 吗?我在内核 2.3.23 ...
我之所以问,是因为我正在查看一些可能与 NPTL 一起使用的代码,但我可以看到它仍然包含 pthread,AFAIK 存在线程级别的信号处理、虚假唤醒等问题。
不。
NPTL 是一种较新的 POSIX 线程实现,可用于任何现代 Linux 发行版。
较旧的实现——LinuxThreads——在很多方面都受到了限制,你不太可能遇到它。
两种实现都是pthread。
线程实现是在配置 c 运行时库时选择的,通常是glibc(参见示例--enable-add-ons
)。