155 執行緒的相關操作
1.執行緒的掛起與恢復
SuspendThread、ResumeThread
執行緒的掛起和恢復是有次數的,掛起和恢復的次數是一一對應的
2.執行緒的優先順序
①AfxBeginThread建立執行緒的時候直接指定
②CreateThread需要建立之後指定。獲取:GetThreadPriority 設定:SetThreadPriority
UINT _cdecl ThreadProc1(LPVOID lpParameter)
{
CStdioFile mFile;
mFile.Open(_T("F:\\456.txt"), CFile::modeCreate | CFile::modeReadWrite);
int tipMsg = (int)lpParameter;
CString str;
while (true)
{
str.Format(_T("%d\n"), tipMsg);
mFile.WriteString(str);
}
mFile.Close();
return 0;
}
UINT _cdecl ThreadProc2(LPVOID lpParameter)
{
CStdioFile mFile;
mFile.Open(_T("F:\\789.txt"), CFile::modeCreate | CFile::modeReadWrite);
int tipMsg = (int)lpParameter;
CString str;
while (true)
{
str.Format(_T("%d\n"), tipMsg);
mFile.WriteString(str);
}
mFile.Close();
return 0;
}
HANDLE hThread = NULL;
void CThreadTestDlg::OnBnClickedButton1()
{
CWinThread * pThread = AfxBeginThread(ThreadProc1,(LPVOID)111,THREAD_PRIORITY_LOWEST);
CWinThread * pThread1 = AfxBeginThread(ThreadProc2, (LPVOID)789, THREAD_PRIORITY_HIGHEST);
// TODO: 在此新增控制元件通知處理程式程式碼
hThread = pThread->m_hThread;
}
3.執行緒的退出與終結
①最好的方式:讓執行緒函式主動退出,或者return
可以保證執行緒函式裡面物件的解構函式被呼叫,執行緒申請的相關空間被釋放
②執行緒主動退出,可以呼叫ExitThread(MFC中使用AfxEndThread);
執行緒函式裡面物件的解構函式不會被呼叫,執行緒申請的相關空間被釋放;
③其他程式強行結束目標執行緒:可以呼叫TerminateThread
此函式非常危險,要原理
④執行緒退出碼的獲取:GetExitCodeThread
前提:控制程式碼有效,不被關閉
相關文章
- 多執行緒的執行緒狀態及相關操作執行緒
- python之執行緒相關操作(補充)Python執行緒
- 執行緒池相關執行緒
- 多執行緒相關整理執行緒
- 程式和執行緒相關執行緒
- 執行緒池相關複習執行緒
- Java 多執行緒 相關概念Java執行緒
- 多執行緒相關問題執行緒
- C#多執行緒學習(一) 多執行緒的相關概念C#執行緒
- C# 多執行緒學習(1) :多執行緒的相關概念C#執行緒
- Java多執行緒相關知識Java執行緒
- 【雜談】JS相關的執行緒模型整理JS執行緒模型
- 異常執行緒的相關複習(前)執行緒
- 跪求關於〖執行緒遷移〗的相關資料!執行緒
- 執行緒操作執行緒
- openGauss執行緒池相關引數執行緒
- 記錄Java執行緒相關知識Java執行緒
- 執行緒中的幾個退出相關函式執行緒函式
- 關於iOS多執行緒通訊的相關總結iOS執行緒
- 執行緒的基本操作:新建和終止執行緒執行緒
- 多執行緒程式設計相關理論執行緒程式設計
- Android小知識-Java多執行緒相關(執行緒間通訊)上篇AndroidJava執行緒
- java多執行緒核心api以及相關概念(一)Java執行緒API
- 案例分析|執行緒池相關故障梳理&總結執行緒
- Java 執行緒常用操作Java執行緒
- 執行緒安全操作HashMap執行緒HashMap
- Java執行緒類相關面試題與答案總結Java執行緒面試題
- Lance提問筆記:關於map的多執行緒操作筆記執行緒
- java--執行緒池--建立執行緒池的幾種方式與執行緒池操作詳解Java執行緒
- javascript執行緒及與執行緒有關的效能優化JavaScript執行緒優化
- windows多執行緒--原子操作Windows執行緒
- PHPPthread多執行緒操作PHPthread執行緒
- Android JNI 中的執行緒操作Android執行緒
- 實現手機直播原始碼中兩個執行緒依次執行的相關程式碼原始碼執行緒
- Android小知識-Java多執行緒相關(Lock使用)AndroidJava執行緒
- python多執行緒中:如何關閉執行緒?Python執行緒
- 關於“UI執行緒”UI執行緒
- 關於執行緒的問題...執行緒