-
*/
-
public class TestExecutor {
-
private Executor executor;
-
/**
-
* 设置执行器
-
*
-
* @param executor
-
*/
-
public void setExecutor(Executor executor) {
-
this.executor = executor;
-
}
-
/**
-
* 用执行器执行多个任务
-
*/
-
public void executeTasks() {
-
//连续执行10个任务
-
for (int i = 0; i < 10; i++) {
-
executor.execute(new TestTask(“任务” + i));
-
}
-
}
-
public static void main(String[] args) {
-
TestExecutor testExecutor = new TestExecutor();
-
testExecutor.setExecutor(Executors.newFixedThreadPool(2));
-
testExecutor.executeTasks();
-
}
-
}
[java] view plain copy
-
package stu.executor;
-
/**
-
* 一个实现了Runnable接口的任务
-
*/
-
public class TestTask implements Runnable {
-
private String taskName;
-
public TestTask(String taskName) {
-
this.taskName = taskName;
-
}
-
public void run() {
-
//一个比较耗时的工作
-
for (int i = 0; i < 9999999; i++) ;
-
System.out.println(“执行 " + taskName + " ,所在线程ID为:” + Thread.currentThread().getId());
-
}
-
}
执行给定的在未来某个时间的命令。命令可以在一个新的线程上执行,在池的线程,或在调用线程。
理解:在以后的某个时刻去执行,异步执行。
-
命令运行的Task
-
如果此任务不能接受执行抛出RejectedExecutionException
-
如果命令是无效的抛出NullPointerException异常
深入理解
java执行器相关的类有:Executor ,Executors,ExecutorService。
Executor分析
Executor是一个接口,是用来执行 Runnable 任务的;它只定义一个方法- execute(Runnable command);执行 Ruannable 类型的任务。通过Executor 管理Thread 对象,可以简化编程。Executor在客户单和任务执行之间提供了一个中介层,通过中介来执行任务。Executor执行任务而无须管理任务的生命周期。因此,Executor是启动任务的首选方法。
Executors分析
**
**
注:Executors相当于对Executor的一个工具类
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级安卓工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Android移动开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Android)
总结
最后对于程序员来说,要学习的知识内容、技术有太多太多,要想不被环境淘汰就只有不断提升自己,从来都是我们去适应环境,而不是环境来适应我们!
这里附上上述的技术体系图相关的几十套腾讯、头条、阿里、美团等公司2021年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。
相信它会给大家带来很多收获:
上述【高清技术脑图】以及【配套的架构技术PDF】可以关注我免费获取
[外链图片转存中…(img-XwHpiXX1-1711055355574)]
[外链图片转存中…(img-gqqusxg2-1711055355575)]
上述【高清技术脑图】以及【配套的架构技术PDF】可以关注我免费获取
当程序员容易,当一个优秀的程序员是需要不断学习的,从初级程序员到高级程序员,从初级架构师到资深架构师,或者走向管理,从技术经理到技术总监,每个阶段都需要掌握不同的能力。早早确定自己的职业方向,才能在工作和能力提升中甩开同龄人。