Multithread
文章平均质量分 88
哲米
深挖程序世界的各种疑难杂症
展开
-
进程、线程和协程
进程 保存在硬盘上的程序运行以后,会在内存空间里形成一个独立的内存体,这个内存体有自己独立的地址空间,有自己的堆,上级挂靠单位是操作系统。操作系统会以进程为单位,分配系统资源(CPU时间片、内存等资源),进程是资源分配的最小单位。 进程的状态图 线程 有时被称为轻量级进程(Lightweight Process,LWP),是操作系统调度(CPU调度)执行的最小单位。 线程独立拥有哪些资源? 线程上下文一般只包含CPU上下文及其他的线程管理信息,线程创建的开销主要取决于为线程堆栈的建立而分配内存原创 2020-07-04 15:32:28 · 610 阅读 · 0 评论 -
Linux - pthread
pthread(POSIX thread)库是个标准C/C++多线程API库,线程没有父子之分。与标准 fork() 相比,线程带来的开销很小。内核无需单独复制进程的内存空间或文件描述符等等。这就节省了大量的 CPU 时间,使得线程创建比新进程创建快上十到一百倍。因为这一点,可以大量使用线程而无需太过于担心带来的 CPU 或内存不足。 1. 多线程基础 线程的操作包括:创建、终止、同步、调度、...原创 2019-10-14 22:15:45 · 958 阅读 · 0 评论