1 创建和终止
1.1 pthread_create函数
#include <pthread.h>
/*******************************************************************************
* 创建线程
* @tid : 线程ID标识
* @attr : 线程属性,优先级、初始栈大小等,通常设置为NULL
* @func : 线程执行的函数
* @arg : 传给线程的参数
* @return : 成功返回0,失败返回Error
*******************************************************************************/
int pthread_create(pthread_t *tid const pthread_attr_t *attr,
void *(*func)(void *), void *arg);
1.2 pthread_join函数
#include <pthread.h>
/*******************************************************************************
* 等待线程执行结束
* @tid : 被等待结束的线程ID标识
* @status : 若非NULL,所等待的线程的返回值存放于status
* @return : 成功返回0,失败返回Error
*******************************************************************************/
int pthread_join(pthread_t tid, void **status);
1.3 pthread_self函数
#include <pthread.h>
/*******************************************************************************
* 线程自己获取自己的线程ID
* @arg : 无
* @return : 返回调用者线程ID
*******************************************************************************/
pthread_t pthread_self(void);
1.4 pthread_detach函数
#include <pthread.h>
/*******************************************************************************
* 指定线程脱离父线程
* @tid : 线程tid
* @return : 成功返回0,失败返回Error
*******************************************************************************/
int pthread_self(pthread_t tid);
1.5 pthread_exit函数
#include <pthread.h>
/*******************************************************************************
* 终止线程
* @status : 不能指向局部于调用线程的对象
* @return : 不能返回给调用者
*******************************************************************************/
void pthread_self(pthread_t tid);