我刚刚在信号处理程序中编写了一些调试,并注意到从man7网站上,snprintf没有被列为异步安全函数。我认为这只是修改局部变量,所以我想知道为什么这不是异步安全的?
为什么这不是异步安全的?
虽然snprintf
(和sprintf
(在信号处理程序中工作得很好,但它们不能保证工作。
我认为这只会修改局部变量,
这些函数可能需要初始化区域设置机制,这肯定不是异步信号安全的。