溫馨提示×

Ubuntu下gcc編譯多線程程序的步驟

小樊
117
2024-09-06 09:44:24
欄目: 智能運維

在Ubuntu下使用GCC編譯多線程程序,需要遵循以下步驟:

  1. 首先,確保你的系統已經安裝了GCC和pthread庫。如果沒有安裝,可以使用以下命令進行安裝:
sudo apt-get update
sudo apt-get install build-essential
  1. 創建一個名為main.c的C源文件,并在其中編寫多線程程序。例如:
#include<stdio.h>
#include <stdlib.h>
#include <pthread.h>

void* print_message(void* ptr) {
    char* message;
    message = (char*) ptr;
    printf("%s\n", message);
    return NULL;
}

int main() {
    pthread_t thread1, thread2;
    char* message1 = "Thread 1";
    char* message2 = "Thread 2";

    int rc1, rc2;

    rc1 = pthread_create(&thread1, NULL, print_message, (void*) message1);
    rc2 = pthread_create(&thread2, NULL, print_message, (void*) message2);

    if (rc1 || rc2) {
        printf("Error: unable to create threads\n");
        exit(-1);
    }

    pthread_join(thread1, NULL);
    pthread_join(thread2, NULL);

    return 0;
}
  1. 使用GCC編譯器編譯源文件。在終端中,導航到包含main.c的目錄,然后運行以下命令:
gcc -o main main.c -lpthread

這將編譯main.c文件,并鏈接pthread庫(-lpthread選項)。編譯后的可執行文件名為main。

  1. 運行編譯后的程序:
./main

這將輸出兩條消息,分別來自兩個線程。請注意,由于線程調度的不確定性,輸出的順序可能會有所不同。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女