pthread_create()函数详解
pthread_create是类Unix操作系统(Unix、Linux、Mac OS X等)的创建线程的函数。它的功能是创建线程(实际上就是确定调用该线程函数的入口点),在线程创建以后,就开始运行相关的线程函数。
头文件:
#include<pthread.h>
函数原型:
int pthread_create (pthread_t * tidp, const pthread_attr_t * attr, void * (*start_rtn)(void*), void *arg);
若线程创建成功,则返回0。若线程创建失败,则返回出错编号,并且*thread中的内容是未定义的。
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
#include <unistd.h>
#include <string.h>
void printids(const char *s)
{
pid_t pid;
pthread_t tid;
pid = getpid();
tid = pthread_self();
printf("%s pid %u tid %u (0x%x)\n", s, (unsigned int) pid, (unsigned int) tid, (unsigned int) tid);
}
void * thr_fn(void *arg)
{
printids("new thread: ");
return NULL;
}
int main()
{
int err;
pthread_t ntid;
err = pthread_create(&ntid, NULL, thr_fn, NULL);
if(err != 0)
{
printf("Can't create thread: %s\n", strerror(err));
}
printids("main thread");
pthread_join(ntid, NULL);
return EXIT_SUCCESS;
}
结果展示:
到此这篇关于C语言 pthread_create() 函数讲解的文章就介绍到这了,更多相关C语言 pthread_create()内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!