信号处理程序中的非重入函数?

Mar*_*rco 4 signals handler

考虑一个调用exit()作为最后一条指令的信号处理程序:在该处理程序中调用非重入函数(例如free())是否安全?

恕我直言,这是合法的,因为处理程序没有返回到正常的执行顺序.

先感谢您.

Art*_*yom 6

不,这是非法的,更多的是,很少有安全功能可以调用.

有一个要调用的安全函数列表,请参阅http://linux.die.net/man/2/signal Notes部分.