函式簡介
執行緒清理處理程式
pthread_cleanup_push來註冊清理函式rtn,這個函式有一個參數arg。在以下三種情形之一發生時,註冊的清理函式被執行:
1)調用pthread_exit。
2)作為對取消執行緒請求(pthread_cancel)的回響。
3)以非0參數調用pthread_cleanup_pop。
頭檔案
#include <pthread.h>
函式聲明
void pthread_cleanup_push(void (*rtn)(void *),void *arg);
void pthread_cleanup_pop(int execute);
參數
rtn 處理程式入口地址
arg 傳遞給處理函式的參數
編譯連結參數
-pthread
注意事項
1)如果執行緒只是由於簡單的返回而終止的,則清除函式不會被調用。
2)如果pthread_cleanup_pop被傳遞0參數,則清除函式不會被調用,但是會清除處於棧頂的清理函式。