POSIX(可移植操作系统接口)。
下面是一个 POSIX 线程的简单示例程序:
thread1.c
#include <pthread.h>
#include <stdlib.h>
#include <unistd.h>
//创建和调用线程
void *thread_function(void *arg)
{
int i;
for ( i=0; i<20; i++)
{
printf("Thread says hi!\n");
sleep(1);
}
return NULL;
}
int main(void)
{
//1.声明变量 线程id 线程句柄
pthread_t mythread;
//2.创建线程(指向mythread的指针,线程属性,调用的函数名)
if ( pthread_create( &mythread, NULL, thread_function, NULL) ) {
printf("error creating thread.");
abort();
}
//3.调用线程
//pthread_join(线程id,线程返回值,放置在指定的位置)
if ( pthread_join ( mythread, NULL ) ) {
printf("error joining thread.");
abort();
}
exit(0);
}
在GCC 上运行,
$ gcc thread1.c -o thread1 -lpthread 可以看到结果。