NPTL和POSIX线程的基本区别是什么?这两个如何发展?
解决方法
POSIX线程(pthread)不是一个实现,它是以pthread_开头的几个函数的API规范(英文中的标准,在英文中),它们定义在< pthread.h>头. POSIX也是一套规格.
NPTL现在在Linux下的GNU Libc中,并且(或至少尝试非常困难)POSIX线程的实现. Linux系统上有一堆源代码和二进制代码.
使用gcc -pthread编译并与-pthread链接的应用程序在Linux上使用NPTL代码.
附加物
存在pthread-s的替代实现:在Linux上,MUSL Libc旨在符合Posix(这意味着拥有pthreads);在其他Posix系统(AIX,Solaris,…)上,您也有pthread(但不是NPTL或Glibc).