linux

怎样判断pthread_create是否成功

小樊
81
2024-12-28 23:18:08
栏目: 编程语言

要判断pthread_create是否成功,您可以检查它的返回值

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

void *my_thread(void *arg) {
    // 线程执行的代码
    return NULL;
}

int main() {
    pthread_t thread_id;
    int result;

    // 创建线程
    result = pthread_create(&thread_id, NULL, my_thread, NULL);

    // 检查pthread_create是否成功
    if (result != 0) {
        fprintf(stderr, "Error: pthread_create failed, return code %d\n", result);
        return 1; // 返回一个非零值表示程序出错
    } else {
        printf("pthread_create succeeded, thread ID is %ld\n", (long)thread_id);
        // 在此处执行其他操作,例如等待线程结束
        pthread_join(thread_id, NULL);
    }

    return 0;
}

在这个示例中,我们首先调用pthread_create函数来创建一个新线程。然后,我们检查它的返回值。如果返回值不等于0(表示错误),我们打印一条错误消息并返回一个非零值。否则,我们打印一条成功消息并继续执行其他操作,例如使用pthread_join等待线程结束。

0
看了该问题的人还看了