C C 多執行緒基礎程式設計

2021-09-11 18:57:33 字數 2169 閱讀 3692

1.基本的阻塞型實現

// multi_thread.cpp : 此檔案包含 "main" 函式。程式執行將在此處開始並結束。

//#include "pch.h"

#include #include #include using namespace std;

void thread01()

}void thread02()

}int main()

system("pause");

}// 執行程式: ctrl + f5 或除錯 >「開始執行(不除錯)」選單

// 除錯程式: f5 或除錯 >「開始除錯」選單

// 1. 使用解決方案資源管理器視窗新增/管理檔案

// 2. 使用團隊資源管理器視窗連線到源**管理

// 3. 使用輸出視窗檢視生成輸出和其他訊息

// 4. 使用錯誤列表視窗檢視錯誤

// 5. 轉到「專案」>「新增新項」以建立新的**檔案,或轉到「專案」>「新增現有項」以將現有**檔案新增到專案

// 6. 將來,若要再次開啟此專案,請轉到「檔案」>「開啟」>「專案」並選擇 .sln 檔案

2.去除阻塞

// multi_thread.cpp : 此檔案包含 "main" 函式。程式執行將在此處開始並結束。

//#include "pch.h"

#include #include #include using namespace std;

void thread01()

}void thread02()

}int main()

system("pause");

}// 執行程式: ctrl + f5 或除錯 >「開始執行(不除錯)」選單

// 除錯程式: f5 或除錯 >「開始除錯」選單

// 1. 使用解決方案資源管理器視窗新增/管理檔案

// 2. 使用團隊資源管理器視窗連線到源**管理

// 3. 使用輸出視窗檢視生成輸出和其他訊息

// 4. 使用錯誤列表視窗檢視錯誤

// 5. 轉到「專案」>「新增新項」以建立新的**檔案,或轉到「專案」>「新增現有項」以將現有**檔案新增到專案

// 6. 將來,若要再次開啟此專案,請轉到「檔案」>「開啟」>「專案」並選擇 .sln 檔案

3.實際工程中將任務分配給不同的核心實現

// multi_thread.cpp : 此檔案包含 "main" 函式。程式執行將在此處開始並結束。

//#include "pch.h"

#include #include #include #include #include "windows.h"

system_info sysinfo;

int taskflag[2] = ;

using namespace std;

void thread01(int task_n)

void thread02(int task_n)

int main()

if (taskflag[1] == 0)

}system("pause");

}// 執行程式: ctrl + f5 或除錯 >「開始執行(不除錯)」選單

// 除錯程式: f5 或除錯 >「開始除錯」選單

// 1. 使用解決方案資源管理器視窗新增/管理檔案

// 2. 使用團隊資源管理器視窗連線到源**管理

// 3. 使用輸出視窗檢視生成輸出和其他訊息

// 4. 使用錯誤列表視窗檢視錯誤

// 5. 轉到「專案」>「新增新項」以建立新的**檔案,或轉到「專案」>「新增現有項」以將現有**檔案新增到專案

// 6. 將來,若要再次開啟此專案,請轉到「檔案」>「開啟」>「專案」並選擇 .sln 檔案

c c 多執行緒程式設計基礎講解(三)

include include using namespace std define num threads 5 void say hello void args int main pthread exit null 編譯 執行,結果如下 current pthread id 13967123345...

c c 多執行緒程式設計基礎講解(一)

利用幾篇文章簡單記錄下c與c 多執行緒程式設計基礎入門的東西,每篇乙個程式來記錄,備忘。這些章節是由淺入深組織的!在注釋中講吧,佛樓公尺!cpp view plain copy include include 標頭檔案是必須的,符合posix標準使程式可移植眾多平台 using namespace ...

c c 多執行緒程式設計基礎講解(四)

經過前面的幾個例子,是不是還少個執行緒建立時屬性引數沒有提到,見下文示例 cpp view plain copy include include include include using namespace std define num threads 5 void say hello void ...