中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C語言多線程并行如何實現

小樊
92
2024-07-12 20:19:27
欄目: 編程語言

在C語言中實現多線程并行可以使用pthread庫。pthread庫是POSIX標準中線程操作的庫,提供了創建、管理和同步線程的函數。

下面是一個簡單的示例代碼,演示了如何在C語言中使用pthread庫實現多線程并行:

#include <stdio.h>
#include <pthread.h>

#define NUM_THREADS 5

void *printHello(void *threadID) {
    long tid;
    tid = (long)threadID;
    printf("Hello World! It's me, thread #%ld\n", tid);
    pthread_exit(NULL);
}

int main() {
    pthread_t threads[NUM_THREADS];
    int rc;
    long t;

    for (t = 0; t < NUM_THREADS; t++) {
        printf("In main: creating thread %ld\n", t);
        rc = pthread_create(&threads[t], NULL, printHello, (void*)t);
        if (rc) {
            printf("ERROR; return code from pthread_create() is %d\n", rc);
            return -1;
        }
    }

    pthread_exit(NULL);
}

在這個示例中,通過調用pthread_create函數創建了5個線程,并且每個線程執行printHello函數來輸出當前線程的編號。最后在主線程中調用pthread_exit函數來等待所有線程執行完畢后再退出。

需要注意的是,在編譯時需要鏈接pthread庫,可以使用以下命令編譯這個示例程序:

gcc -o program program.c -pthread

通過這種方式,就可以在C語言中實現多線程并行。

0
大埔县| 博爱县| 如皋市| 陆丰市| 大足县| 广安市| 滨州市| 阜平县| 长寿区| 新安县| 屏东市| 清流县| 楚雄市| 万全县| 威信县| 集安市| 定日县| 呼图壁县| 上饶市| 陕西省| 肃南| 嘉兴市| 凤山县| 波密县| 绥阳县| 年辖:市辖区| 彭州市| 罗定市| 德化县| 义乌市| 板桥市| 桐梓县| 邵阳县| 乌拉特前旗| 怀来县| 大理市| 金华市| 玉树县| 九江县| 宜川县| 永定县|