【发布时间】:2011-05-18 15:36:40
【问题描述】:
我是否需要在编译时添加 _REENTRANT 宏以确保我的 errno 线程安全?
如果不是,是所有版本的 gcc / linux / solaris 都需要,还是某些旧版本需要?
我最近测试了一段未使用 _REENTRANT 的代码,发现 errno 在多线程环境中的行为未定义?但是,添加 _REENTRANT 后一切正常。环境是 Solaris。
但是,here 的讨论似乎并没有说必须添加 _REENTRANT。我有点困惑。
此外,除了 _REENTRANT 之外,我还应该添加任何其他选项或库以确保我的应用程序具有线程安全的 errno?
【问题讨论】:
标签: c multithreading compiler-construction errno