在 Mac OS X 的 C 标准库实现中是否有明确的线程安全函数列表?
有一个很好的答案here特别是关于 glibc
和 f*()
函数,但我没有找到关于 OS X 的任何此类资源。有这样的东西吗?
例如,strptime()
和strftime()
是线程安全的吗? printf()
?这些可能具有我不想弄乱的内部缓冲区。 :)
最佳答案
单一 Unix 规范给出 a fairly short list of functions that are allowed to be non–thread-safe (除了“遗留功能组”中的函数被允许是非线程安全的,尽管那里没有列出)。该列表包括 Dave 在他的回答中提到的 strtok()
,但不包括 strptime()
和 strftime()
,也不是 printf()
。
This StackOverflow answer断言,在回答一个与这个问题非常相似的问题时,OS X 确实支持规范的上述方面,所以我认为这可能是最好的列表。 (顺便说一句,您可能还会对该问题的其余部分以及该问题的其他答案感兴趣。)
关于c - OS X 上 C 标准库的线程安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8379762/