Executor 并发调度模型

Executor 并发调度模型

Executor是一种并发调度模式:它借助于队列和维护着一个用于调度任务的线程池来处理任务对象的调度。每一个Runnable对象都是一个任务单元,它是可以被Executor调度器调度的最小单元。
当开发者创建一个Runnable对象时,开发者需要把它提交到Executor调度器中,调度器会把它送入到队列中,等待调度。线程池里面处于空闲的线程就会从队列中获取可调用的任务对象,然后在此线程
中执行任务单元。

优点

  1. 可以控制并发的数量

  2. 不会为每一个线程开辟一个新的线程,避免频繁创建线程的系统开销

伪码描述

创建一个Executor
设置Executor需要存放任务单元的队列
设置Executor用于执行任务单元的线程池,并初始化一批线程等待任务调度

...

创建一个Runnable对象,即任务单元
送入任务单元到Executor调度器中
Executor收到任务然后把其送入到队列中

...

线程池扫描到队列中有任务,取出任务,分配一个空闲的线程调用Runnable的run()方法
任务单元计算完毕,线程重新在线程池中处于空闲对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值