多线程,自我归纳可以定义为:
是操作系统提供支持的、多个可由操作系统调度分配CPU资源执行的任务流。
1)线程是操作系统支持的,需要一系列的操作系统级设施(数据结构、机制、规则)支持;
2)线程是操作系统分配CPU资源的单位;
3)每个线程都有自己的任务代码流;
在操作系统中,task的执行模式可以分为 顺序、并行、并发
顺序:多个操作、任务在执行是按时间顺序进行的,没有任何交叉的情况
并行:多个步骤或操作是同时在执行的,即在任意时间点上,看上去多个任务都在进行
并发:
可能在某些时间点上,存在顺序的情况,而在一些时间点上,存在并行的情况。多个无序的任务受限于资源或其他,单独拎出两个特定任务A和B来看,在某些时间点可能两个都在运行,在某些时间点可能A或B处于阻塞状态;或者在多核时并行执行,而在单核时存在顺序(轮流切换)执行。
网友评论