sigsetjmp保存目前堆栈环境

sigsetjmp 保存目前堆栈环境
相关函数:longjmp, siglongjmp, setjmp
表头文件:#i nclude <setjmp.h>
函数定义:int sigsetjmp(sigjmp_buf env, int savesigs)
函数说明
sigsetjmp()会保存目前堆栈环境,而后将目前的地址做一个记号,而在程序其余地方调用siglongjmp()时便会直接跳到这个记号位置,而后还原堆栈,继续程序好执行。

参数env为用来保存目前堆栈环境,通常声明为全局变量
参数savesigs若为非0则表明搁置的信号集合也会一块保存

当sigsetjmp()返回0时表明已经作好记号上,若返回非0则表明由siglongjmp()跳转回来。

返回值  :返回0表明局促存好目前的堆栈环境,随时可供siglongjmp()调用, 若返回非0值则表明由siglongjmp()返回

附加说明:setjmp()和sigsetjmp()会令程序不易使人理解,请尽可能不要使用
范例:参longjmp()
 
相关文章
相关标签/搜索