put 是可重入的吗?
int put(const char*);
是可重入的吗?我可以安全地将其放入信号处理程序中吗?
Is int puts(const char*);
re-entrant? Can I safely put it into a signal handler?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这里是一个表,其中包含被认为可以安全处理信号的所有函数:
puts
似乎不在该列表中,但是根据 this,它被认为是可重入的,但不是异步安全的,这也许是为什么它不在上面提到的列表中的原因。Here is a table with all functions considered safe for signal handling:
puts
does not seem to be in that list, however per this, it is deemed reentrant, but not async-safe, perhaps why it is not in the above mentioned list.不,不是,但是您可以使用异步信号安全的 write() 来从信号处理程序输出消息:
No it is not, you can however use
write()
, which is async signal safe, to output messages from a signal handler: