|
|
1
17
它不使用堆的原因是为了符合标准(POSIX)和其他系统。接口只是不应该释放返回的缓冲区。它假设静态存储。
但是通过将其声明为线程本地(使用
这不是真的 可重入的 或者符合这个术语的精神。如果有一个递归函数调用它,那么在两次调用之间,缓冲区不能是相同的。但是它可以被多个线程使用,这通常已经足够好了。
编辑:
顺便说一句,我刚刚记得,这个函数有一个更新的版本,它使用了调用者提供的缓冲区。见
|