首页 > 系统相关 >进程中的线程调度

进程中的线程调度

时间:2024-09-10 12:13:37浏览次数:10  
标签:异步 计算机 调度 线程 进程 任务调度

 

进程是应用程序运行的基本单位。进程是计算机资源的调度过程。资源抢占着计算机的运行内存。一个应用服务的启动开启一个进程。完整的进程包括主线程,用户线程和守护线程。当一个应用程序服务开启的时候,主线程处于运行状态。用户线程分为父级用户线程和子线程。

 

计算机的组成是由储存器和处理器配合操作。计算机的操作系统一开始设计成为分时操作和分任务操作的模式。大型机器用户量较少,可以忍受时间调度和任务调度的不协调。随着个人PC计算机的问世,基于用户的分时间片异步任务操作的操作系统设计方式在用户体验和性能方面都有保证。

 

调度单元就是进程中的线程。Java中的线程使用Thread类进行构建。线程的调度方式通过计算机的运行处理器。中央系统处理器CPU以异步操作线程。线程构建好之后覆写Thread的run方法接口处理任务数据。线程的调度由系统的调度框架形成线程的任务调度中心。一些任务较少的操作可以使用异步线程池的方式完成。

 

框架层面的线程调度框架像Java的Quartz定时任务调度。异步线程池基于相应的计算机硬件内存池设计。单任务数据处理中心默认分配一个线程完成数据处理业务。任务的调度中心通过配置相应的调度时间表达式完成分布式业务模块的调度数据处理。集群的搭建使得异步业务数据的处理在容错和性能方面保证数据的正常操作。

 

微服务框架把一个应用程序服务拆分成为子服务模块。不同的计算机节点集群处理不同的业务单元。微服务的划分可以通过业务模块拆分。不同类型的用户线程的划分在互联网中也形成不同的微服务模块。机器硬件处理数据的机器集群,存储器硬件会单独拆分形成数据存储区。一些算法的优化会加快调度线程的处理数据的业务逻辑量。海量的数据存储会在不同的区块进行划分生产。

标签:异步,计算机,调度,线程,进程,任务调度
From: https://www.cnblogs.com/liaowanzhong/p/18406170

相关文章

  • DolphinScheduler:大数据任务调度利器
    目录一、概述二、主要特性三、DolphinScheduler架构四、安装与配置1.环境准备2.安装步骤[单机模式]五、使用DolphinScheduler创建任务六、应用场景七、总结一、概述在大数据场景中,任务调度器是必不可少的工具,用于协调多个数据处理任务的执行顺序、调度时间......
  • Liunx:理解进程概念
    一、进程概念进程有两种可以理解的方式:1、已经加载到内存中的程序,叫做进程。2、正在运行的程序,叫做进程从概念上挺好理解的,我们运行一个程序必然要通过CPU,所以自然需要加载到内存中……     但我们应该关注的是,OS中不仅仅只有一个进程,可能运行着多个进程(比......
  • 小琳Python课堂:掌握进程与线程的奥秘
    大家好,这里是小琳Python课堂!今天我们来探讨Python中的多任务处理利器——进程和线程!......
  • 并发编程:线程池(上)
    一、什么是线程池?顾名思义,线程池就是管理一系列线程的资源池。当有任务要处理时,直接从线程池中获取线程来处理,处理完之后线程并不会立即被销毁,而是等待下一个任务。二、为什么要用线程池?池化技术想必大家已经屡见不鲜了,线程池、数据库连接池、HTTP连接池等等都是对这个思......
  • 并发编程:线程池(下)
    一、线程池常用的阻塞队列有哪些?新任务来的时候会先判断当前运行的线程数量是否达到核心线程数,如果达到的话,新任务就会被存放在队列中。不同的线程池会选用不同的阻塞队列,我们可以结合内置线程池来分析。容量为Integer.MAX_VALUE的LinkedBlockingQueue(有界阻塞队列):FixedT......
  • 多线程模拟叫号看病
    //普通号publicclassNormalThreadextendsThread{privateintnum=20;publicintgetNum(){returnnum;}publicvoidsetNum(intnum){this.num=num;}publicNormalThread(Stringname,intnum){super(......
  • Java并发编程实战 11 | 线程活跃问题(死锁,活锁和饥饿)
    并发应用程序的“活跃度”指的是它及时执行并完成任务的能力。活跃性问题则是指程序无法最终得到预期的运行结果。相比于线程安全问题,存活性问题可能会导致更严重的后果。例如,死锁会使程序完全停滞,导致无法继续执行。常见的活跃性问题包括以下三种:1.死锁(Deadlock)死锁发......
  • 一个例子彻底搞懂对线程模型的理解 !
    如何理解一对一线程模型假设你的计算机是一个大工厂,操作系统(如Windows或Linux)是工厂的管理系统,而Java虚拟机(JVM)是工厂里的一个部门。这些部门里有很多工人(线程),每个工人可以负责一项具体的任务(比如处理一个计算或者操作某个数据)。在Java中,每当你创建一个线程时,JVM就会告诉......
  • Spring Cloud全解析:熔断之Hystrix线程隔离导致的问题
    Hystrix线程隔离在微服务框架中,可能一个服务需要调用多个微服务,在tomcat中运行时,tomcat只是分配了100个线程,由于多个服务之间调用的时间消耗过长,可能会导致线程耗尽,而在Hystrix中存在线程隔离,对于每个微服务分配一个线程池,访问某个微服务时就从对应的线程池中取线程,如果对应线程......
  • 使用 Parallel 类进行多线程编码(下)
    2.Parallel.ForEach()的使用 从ForEach()这个名字可以看出该方法是用来遍历泛型集合的,新建一个ASP.NETCore Web应用的项目,如下:         在Index.cshtml.cs文件中增加一个UserInfo.cs的类,代码如下:publicclassUserInfo{publicint......