# 12.3.3 创建线程
线程通过调用 pthread_create 函数来创建其他线程。
#include <pthread.h>
typedef void *(func)(void *);
int pthread_create(pthread_t *tid, pthread_attr_t *attr,
func *f, void *arg);
若成功则返回 0,若出错则为非零。
pthread_create 函数创建一个新的线程,并带着一个输入变量 arg,在新线程的上下文中运行线程例程 f。能用 attr 参数来改变新创建线程的默认属性。改变这些属性已超出我们学习的范围,在我们的示例中,总是用一个为 NULL 的 attr 参数来调用 pthread_create 函数。
当 pthread_create 返回时,参数 tid 包含新创建线程的 ID。新线程可以通过调用 pthread_self 函数来获得它自己的线程 ID。
#include <pthread.h>
pthread_t pthread_self(void);
返回调用者的线程 ID。