Linux 下创建线程
线程是CPU运行的最小的调度单位,一个进程里面可以有多个并发的线程。但是至少有一个线程。在linux里面真正的线程这个东西,有的至少轻量级的进程,linux里面的线程和进程的创建其实都是fork()函数和exec() 函数对clone()函数不同的封装实现的,他们通过传入不同的参数实现了子进程和父进程在一些资源上共享权限,地址空间、文件系统、打开的文件、信号处理程序等,如果子进程和父进程没有共享任何东西,那么就是两个独立的进程,不然就是线程了。
在linux下面,可以通过函数 pthread_create()来创建进程,
第一个参数,用来接收是创建的线程ID
第二个参数,用来描述创建的线程的属性,一般为NULL,具体是啥可以去查资料
第三参数,是线程的入口函数,是一个void *指针
第四个参数,是出入线程的参数,也是一个指针
//参数
int pthread_create( pthread_t *restict thread,
const pthread_attr_t *restric attr,
void *( *start_routine )( void* ),
void *restrict arg );
//创建新的线程的方法
error = pthread_create( &tid, NULL, ( void* )thread, NULL );
if( error )
{
printf("thread can not create!\n");
return -1;
}
<