快捷导航
查看: 895|回复: 0

什么是多线程?

[复制链接]

管理员

发表于 2020-6-29 22:42 | 显示全部楼层 |阅读模式
多线程是一种同时执行多个线程的技术,它不允许进程或操作系统生成计算机中运行的程序的多个副本,而是在不创建程序多个副本的情况下,同时管理多个用户或同一用户的多个请求。线程是轻量级进程,是处理的最小单元,同时运行多个线程称为多线程。因此,基本上,这是一种由多个处理器使用单个代码集的方法。了解多线程为了理解多线程,需要理解两个术语。线程:线程是进程的独立或基本单元。进程:正在执行的程序称为进程,一个进程中存在多个线程。多线程中的执行是并发的和并行的。并发执行:如果处理器可以在单个处理器上的多线程进程中的线程之间切换执行资源,则可以说它是并发执行。并行执行:当进程中的每个线程可以在同一多线程进程中同时在单独的处理器上运行时,则被称为并行执行。螺纹类型用户级线程:它们由用户创建和管理,它们用于应用程序级别,操作系统不参与。一个很好的例子是当我们在Java,C#,Python等程序设计中使用线程时,我们使用用户线程。每个线程中都包含一些独特的数据,有助于识别它们,例如:程序计数器:程序计数器负责跟踪指令并告诉下一条指令要执行。寄存器:系统寄存器用于跟踪线程的当前工作变量。堆栈:它包含线程执行的历史记录。内核级线程:它们由操作系统实现和支持,它们通常比用户线程花费更多的时间来执行,例如Window Solaris。 多线程模型多线程模型分为三种类型多对多:任意数量的用户线程都可以与相等或更少数量的内核线程进行交互。多对一:它将许多用户级线程映射到一个内核级线程。一对一:用户级线程和内核级线程之间的关系是一对一的。多线程的使用多线程是在系统或程序中引入并行性的一种方式,因此,您可以在看到并行路径的任何地方(两个线程都不依赖于彼此的结果)使用它,以使其变得快速,容易。例如:大数据的处理可以分为多个部分,并使用多个线程来完成。涉及诸如验证和保存,产生和消费,读取和验证之类的机制的应用程序是在多个线程中完成的。这种应用程序的例子很少,例如网上银行,充值等。它可用于制作不同元素在不同线程上运行的游戏。在Android中,它用于访问在后台线程中运行的API,以防止应用程序停止运行。在Web应用程序中,当您希望您的应用程序获得异步调用并异步执行时使用它。 多线程的优点经济:因为它们共享相同的处理器资源,因此非常经济。创建线程所需的时间更少。资源共享:它允许线程共享资源,例如数据,内存,文件等。因此,应用程序可以在同一地址空间内具有多个线程。响应速度:它提高了对用户的响应速度,因为它允许程序继续运行,即使它的一部分正在执行冗长的操作或被阻塞。可扩展性:它增加了多CPU机器上的并行性,它增强了多处理器计算机的性能,这样可以更好地利用CPU资源。为什么要使用多线程?增加并行度充分利用可用的CPU资源。改善应用程序的响应能力并与用户进行更好的交互。结论在计算机世界中,当我们谈论并行性时,我们谈论的是多线程。实现多线程是相当有效和直接的,因为它使工作更便宜,它处理异步的特长使其独树一帜。因此,它是有需求的,并且是值得学习的技术。相关文章推荐什么是多线程?  在计算世界中,多线程是在现有进程中创建新的执行线程的任务,而不是启动一个新进程来开始一个函数。从本质上说,多线 […]...NAS是什么?  NAS代表“网络附属存储”,典型的计算机使用内置和外置硬盘驱动器存储数据。如果计算机连接到网络,它可以与网络上 […]...3D打印机是什么?  3D打印机是一种计算机辅助制造(CAM)设备,可以创建三维物体,与传统打印机一样,3D打印机从计算机接收数字数 […]...SOA是什么?  SOA(或面向服务的体系结构)是一种技术,它可以在需要时链接网络上的各种资源。与其他类型的系统体系结构设计相比 […]...npm是什么?npm的工作方式和安装方法  npm全称Node Package Manager,随同NodeJS一起安装,可以解决诸多NodeJS代码问题 […]...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

966SEO学习网

GMT+8, 2024-4-26 08:22

Powered by SEO学习网  本站采用创作共用版权 CC BY-NC-SA 3.0 CN 许可协议,转载或复制请注明出处

© 2014-2019 投诉建议及友链申请联系邮箱:[email protected]

快速回复 返回顶部 返回列表