一.概念
如果说进程是一个资源管家,负责从主人那里要资源的话,那么线程就是干活的苦力。一个管家必须完成一项工作,就需要最少一个苦力,也就是说,一个进程最少包含一个线程,也可以包含多个线程。苦力要干活,就需要依托于管家,所以说一个线程,必须属于某一个进程
1.介绍
**线程:**是轻量级的进程(LWP:light weight process),在Linux环境下线程的本质仍是进程,它是进程的一个实体(进程是它的容器),是 CPU 调度和分派的基本单位,它是比进程更小的能独立运行的基本单位
- 进程是操作系统分配资源的最小单位
- 线程是操作系统调度的最小单位
2.线程和进程
**底层体现:**对于父进程的内容:
- 深拷贝:进程
- 浅拷贝:线程
地址空间:
- 进程:有自己独立的地址空间
- 线程:使用进程的地址空间
3.线程函数列表安装
就是安装man手册
命令:sudo apt-get install manpages-posix-dev
查看:man -k pthread
4.NPTL
**NPTL:**称为 Native POSIX Thread Library,是 Linux 线程的一个新实现,它克服了 LinuxThreads 的缺点,同时也符合 POSIX 的需求。与 LinuxThreads 相比,它在性能和稳定性方面都提供了重大的改进
查看pthread库版本:getconf GNU_LIBPTHREAD_VERSION
root@iZbp1aupqg3cfppq5uigwdZ:~# getconf GNU_LIBPTHREAD_VERSION
NPTL 2.35