Jur*_*aho 11 c thread-safety visual-c++
errno在MSVC上是否是线程安全的?
根据这个问题的答案,POSIX要求errno是线程安全的.但MSVC可能不符合POSIX,MSDN也没有说明线程安全.MSDN矛盾提及errno被宣称为extern int errno;,但也作为#define errno (*_errno())
Dav*_*nan 14
尽管MSVC绝对不符合POSIX,但errno它是以线程安全的方式在MSVC运行时(至少从MSVC2008开始)实现的.
虽然文档声明它extern int errno实际上是作为一个#define允许强加线程安全的函数实现的.如果在反汇编窗口中单步执行此功能,则很明显使用了线程本地存储.
可悲的是,我不能指出任何证实这一点的官方文件,但这就是生活!
| 归档时间: |
|
| 查看次数: |
1781 次 |
| 最近记录: |