在Ubuntu上編譯C++多線程程序,你可以使用g++編譯器和C++11標準中的<thread>
庫。下面是一個簡單的步驟說明:
g++ --version
如果g++沒有安裝,你可以使用以下命令來安裝:
sudo apt update
sudo apt install g++
main.cpp
,并在其中編寫多線程代碼。下面是一個簡單的示例,展示了如何使用C++11的<thread>
庫創建兩個線程:#include <iostream>
#include <thread>
void print_hello() {
std::cout << "Hello from thread " << std::this_thread::get_id() << std::endl;
}
int main() {
std::thread t1(print_hello);
std::thread t2(print_hello);
t1.join();
t2.join();
return 0;
}
main.cpp
文件的目錄,然后使用g++編譯器編譯該文件。確保在編譯命令中指定-std=c++11
選項以啟用C++11標準支持,并鏈接-pthread
選項以啟用多線程支持:g++ -std=c++11 -pthread main.cpp -o main
這將生成一個名為main
的可執行文件。
./main
你應該會看到類似以下的輸出,顯示了兩個線程交替打印消息:
Hello from thread 0x7ffcc2b3a710
Hello from thread 0x7ffcc2b3a740
Hello from thread 0x7ffcc2b3a710
Hello from thread 0x7ffcc2b3a740