多线程编程指南

将原有模块与新模块链接

表 7–1 说明,在将多线程对象模块与原有对象模块链接时应格外小心。

表 7–1 使用或不使用 _REENTRANT 标志进行编译

文件类型 

编译 

参考 

返回值 

原有对象文件(非线程)和新对象文件 

不使用 _REENTRANT_POSIX_C_SOURCE 标志

静态存储

传统的 errno

新对象文件 

使用 _REENTRANT_POSIX_C_SOURCE 标志

__errno,新的二进制入口点

线程的 errno 定义地址

libnsl 中使用 TLI 的程序要获取 TLI 全局错误变量,请包括 tiuser.h

使用 _REENTRANT_POSIX_C_SOURCE 标志(必需)

__t_errno,新的入口点

线程的 t_errno 定义地址。