C++ 线程函数 pthread_create()

pthread_create是C++中的一个函数,它用于创建一个新的线程。这个函数可以在不同的操作系统中使用,因为它是基于POSIX标准的。

函数原型如下:

int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(start_routine)(void), void *arg);

参数解释:

  • thread:指向线程标识符的指针,由函数返回。
  • attr:指向线程属性的指针,NULL表示使用默认属性。
  • start_routine:线程函数的指针,新线程会从这个函数开始执行。
  • arg:传递给线程函数的参数。

函数返回值:

  • 成功返回0,否则返回错误代码。

示例代码:

#include 
#include 

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

int main() {
    pthread_t thread;
    char *message = "Hello, world!";
    int rc = pthread_create(&thread, NULL, print_message, (void *)message);
    if (rc) {
        printf("Error: unable to create thread, %d\n", rc);
        return -1;
    }
    pthread_join(thread, NULL);
    return 0;
}

这个示例代码创建了一个新线程,执行print_message函数,打印出传递给它的字符串。pthread_create函数返回0表示线程创建成功,否则表示失败。在主线程中,我们调用pthread_join函数等待新线程执行完毕。

你可能感兴趣的:(c++,开发语言)