linux中線程的掛起與恢復(程序暫停)

2021-06-28 02:47:57 字數 871 閱讀 3801

天在網上查了一下

linux中對程序的掛起與恢復的實現,相關資料少的可憐,大部分都是貼上複製。也沒有完整詳細的**。故自己整理了一下

程式流程為:主線程建立子執行緒(當前子執行緒狀態為stop停止狀態),5秒後主執行緒喚醒子執行緒,10秒後主執行緒掛起子執行緒,15秒後主執行緒再次喚醒子執行緒,20秒後主執行緒執行完畢等待子執行緒退出。

**如下:

#include

#include

#include

#include

#include

#define run 1

#define stop 0

pthread_mutex_t mut = pthread_mutex_initializer;

pthread_cond_t cond = pthread_cond_initializer;

int status = stop;

void * thread_function(void)

pthread_mutex_unlock(&mut);

printf("child pthread %d\n", i++);

if (i == 20) 

break;

sleep(1);

}  

} void thread_resume()  

else

} void thread_pause()  

else  

} int main()

if (0 == pthread_join(child_thread, null))

printf("child thread is over\n");

return 0; }

linux中線程的掛起與恢復(程序暫停)

今天在網上查了一下linux中對程序的掛起與恢復的實現,相關資料少的可憐,大部分都是貼上複製。也沒有完整詳細的 故自己整理了一下 程式流程為 主線程建立子執行緒 當前子執行緒狀態為stop停止狀態 5秒後主執行緒喚醒子執行緒,10秒後主執行緒掛起子執行緒,15秒後主執行緒再次喚醒子執行緒,20秒後主...

執行緒的掛起與恢復

執行緒的掛起與恢復 缺點 什麼時候呼叫?掛起後的資源會存在,會發生一些不可預知問題!xthread.h pragma once ifdef xplatform exports define xplatform api declspec dllexport else define xplatform ...

執行緒的掛起與恢復

建立完乙個執行緒並啟動之後,還可以掛起 恢復 休眠或終止它,本節主要對執行緒的掛起與恢復進行講解。執行緒的掛起與恢復分別可以通過呼叫thread類中的suspend方法和resume方法實現,下面對這兩個方法進行詳細介紹。1 suspend方法 該方法用來掛起執行緒,如果執行緒已掛起,則不起作用。語...