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()
 
相關文章
相關標籤/搜索