unix – 为什么malloc不是异步信号安全?

为什么在信号处理程序中不能使用malloc?什么可以“发生错误”?
可以随时调用信号处理程序,包括在对malloc进行另一个调用的时候.如果发生这种情况,会发生以下两件事情之一:

>您的进程会在信号处理程序内部死锁,因为malloc将无法获取堆锁.>你的进程会损坏它的堆,因为malloc确实获取了锁(或者不认为它需要它),然后继续渲染堆不一致,导致后来的崩溃.

相关文章

用的openwrt路由器,家里宽带申请了动态公网ip,为了方便把2...
#!/bin/bashcommand1&command2&wait从Shell脚本并行...
1.先查出MAMP下面集成的PHP版本cd/Applications/MAMP/bin/ph...
1、先输入locale-a,查看一下现在已安装的语言2、若不存在如...
BashPerlTclsyntaxdiff1.进制数表示Languagebinaryoctalhexa...
正常安装了k8s后,使用kubect工具后接的命令不能直接tab补全...