网站建设公司价格,个人网上怎样注册公司,大学校园门户网站建设方案,抖音自媒体平台注册入口为什么需要多线程 CPU、内存、IO之间的性能差异巨大多核心CPU的发展线程的本质是增加一个可以执行代码工人 多线程的优点 多个执行流#xff0c;并行执行。#xff08;多个工人#xff0c;干不一样的活#xff09; 多线程的缺点 上下文切换慢#xff0c;切换上下文典型值…为什么需要多线程 CPU、内存、IO之间的性能差异巨大多核心CPU的发展线程的本质是增加一个可以执行代码工人 多线程的优点 多个执行流并行执行。多个工人干不一样的活 多线程的缺点 上下文切换慢切换上下文典型值1us vs 0.3ns/cycle CPU在执行A任务(A没有执行完)时切换到任务B需要保存A的上下文内容等待CPU切换到执行A任务使用。需要消耗大概1000个时钟周期。 不是说多线程是可以提高效率怎么又说多线程慢呢。这里慢单纯指的是线程之间切换时消耗的时间和CPU的时钟周期相比慢。针对内存寻址、硬盘寻址是有提升的。 占用资源每个线程有独立的方法栈。 推荐阅读我是一个CPU这个世界慢死了
线程相关概念
程序 程序Program程序的为了让计算机执行某些操作或解决某个问题而编写一系列有序的指令集合。 软件的目的提高人们的工作效率简化工作流程。静态概念。 进程 进程Process进程是计算机中的程序关于某数据集合上的一次运行活动是系统进行资源分配和调度的基本单位是操作系统结构的基础。 动态概念。 进程的特点 结构性由程序块CODE、数据块DATA、控制块CPU 组成。共享性同一程序运行在不同的数据集上时构成不同的进程。即多个进程可以共享一个程序。如一台电脑同时登陆多个QQ动态性进程是程序在数据集合上的一次执行过程是动态概念。它有生命周期由创建、执行、消亡、。独立性每个进程都以各自独立的速度在CPU上执行。并发性进程的并发性能够提高资源的利用率和系统的效率。制约性并发进程之间存在制约关系也需要相互等待或互通消息保证程序执行的可再现性和计算结果的唯一性。 进程的状态就绪态ready、运行态running、阻塞blocked 进程的缺点占用较多的系统资源浪费内存。 线程 线程Thread是操作系统进程中能够独立执行的实体控制流是处理器调度和分派的基本单位。 可以看成是进程内的多条执行路径。 进程的特点并发性、共享性、动态性、结构性 线程是轻量级的进程一个进程可以并行多个线程进程中的线程共享内存线程间通讯在共享内存中的地址空间上执行不需要额外的通讯机制故速度更快。 区别进程线程本质区别程序是计算机分配资源单位线程是进程中CPU调度和执行的单位开销进程有独立的计算机资源进程间切换会有较大的开销线程可以当做轻量级进程线程间资源共享切换开销小内存分配计算机会给进程分配独立的内存资源线程使用所在进程的资源关系内有线程的进程可以当做单线程一个进程可以有多个线程线程是进程的一部分线程可以当做一个轻量级的进程