线程 (线程gcc记得后面加上 -l pthread)
线程实现的是进程内部的并发
同一个进程下的多个线程共享地址空间
线程是最小的执行单位 进程是最小的资源分配单位
进程是线程的容器
进程可以看作只有一个线程的进程
在一个进程中创建一个新的线程,原来的进程会退化成线程
Linux下的线程叫做轻量级的进程(LWP)
线程的控制原语:
创建线程:pthread_create() fork
结束线程:pthread_exit() exit
获取线程ID:pthread_self() getpid()
线程回收: pthread_join() wait/waitpid
杀死线程:pthread_cancel(l) kill
线程分离:pthread_detach()
线程回收
注意:已经被分离的线程是不可以被回收的
线程同步:
什么是线程同步
同步就是协同步调,按预定的下先后次序进行运行,如:你说完,我再说。这里的同步千万不要理解成那个同时进行,应是指协同 协助 互相配合。线程同步是指多线程通过特定的设置(如互斥量,条件变量等)来控制线程之间的执行顺序(即所谓的同步)也可以说啥在线程之间通过同步建立起执行顺序的关系,如果没有同步,那线程之间是各自运行各自的。