题
这个问题已经有一个答案在这里:
- 是errno线-安全吗? 8的答案
如果你正在写一个多线程的应用程序使用的系统/图书馆的电话,使用errno表明的错误类型、是否有一个安全的方式使用errno?如果没有,是否有一些其他的方式来表示这种类型的错误发生,而不是只发生了错误?
解决方案
如果你的标准图书馆是多线程认识到,那么它可能有一个 #define
这一变化 errno
成功能的电话,返回一个线程-地方错误返回的价值。然而,使用这个您一般 必须 包括 <errno.h>
, ,而不是依赖于一个 extern
《宣言》。
我发现了一篇文章 线的安全和POSIX.1 解决这个非常问题。
其他提示
man errno
说:
errno定义的ISO C的标准 是的可修改左值的类型 int,必须不明确 声明;errno可能是一个宏。errno 是线地;设置在一个 线不会影响它的价值 在任何其他线。
不隶属于 StackOverflow