AIX 中的线程安全库和线程库
本部分描述了 AIX®中的线程库。
缺省情况下,所有的应用程序现在都被认为是“线程化”的,即使它们中的大多数都是“单线程”。 这些线程安全库如下:
| 线程安全库 | ||
|---|---|---|
| libbsd.a | libc.a | libm.a |
| libsvid.a | libtli.a | libxti.a |
| libnetsvc.a | ||
POSIX 线程库
以下 POSIX 线程库是可用的:
- libpthreads.a POSIX 线程库
- libpthreads.a 库基于 POSIX 1003.1c 工业标准(用于可移植用户线程 API)。 编写为使用一个 POSIX 线程库 的任何程序可以移植为使用另一个 POSIX 线程库;只有线程库的性能和非常少的子例程是与实现相关的。 为提高线程库的可移植 性,POSIX 标准使得多种编程工具的实现成为可选。 有关检查 POSIX 选项的更多信息,请参阅 线程库选项。
- libpthreads_compat.a POSIX Draft 7 线程库
- AIX 为编码为 POSIX 线程标准的草稿 7 的现有多线程应用程序提供二进制兼容性。 这些应用程序不需要重新链接就可以运行。 提供 libpthreads_compat.a 库只是为了实现与使用 POSIX 线程标准的 Draft 7 编写的应用程序的较低版本的兼容性。 所有新的应用程序必须使用 libpthreads.a 库,该库支持 32 位和 64 位应用程序。 libpthreads_compat.a 库仅支持 32 位应用程序。 从AIX 5.1 开始,libpthreads.a库支持单一 UNIX 规范第 2 版,其中包括最终的POSIX 1003.1cPthread 标准。