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()
 
Linux C函数库

你可能感兴趣的:(职场,堆栈,保存,休闲,sigsetjmp)