给Task 添加 Action的方法
发布时间:2023-05-18 12:59:56 所属栏目:教程 来源:
导读:我们创建一个 Task 后可以根据我们的需要给 Task 添加不同的 Action,上面的“doLast”就是给队列尾增加一个Action。下面我们先来了解以下,关于 Task 添加 Action 的一些 API:
//在Action 队列头部添
//在Action 队列头部添
我们创建一个 Task 后可以根据我们的需要给 Task 添加不同的 Action,上面的“doLast”就是给队列尾增加一个Action。下面我们先来了解以下,关于 Task 添加 Action 的一些 API: //在Action 队列头部添加Action Task doFirst(Action<? super Task> action); Task doFirst(Closure action); //在Action 队列尾部添加Action Task doLast(Action<? super Task> action); Task doLast(Closure action); //已经过时了,建议用 doLast 代替 Task leftShift(Closure action); //删除所有的Action Task deleteallActions(); 关于上面的 API,deleteall 就是删除所有的 Action,这个我们不用太多讲解,而 leftShift 和 doLast 其实是一样的就是在队列的尾部增加一个 Action。这个 leftShift API 已经过时,我们建议使用 doLast 代替。关于 doFirst 和 doLast 我们下面通过一个例子来讲解: //创建一个名字为apiTask的 task task apiTask { //创建一个 Action , 添加到 Action 列表的头部 doFirst(new Action<Task>() { @Override void execute(Task task) { println "action1++++++++++" } }) //创建一个 Action , 添加到 Action 列表的头部 doFirst { println "action2++++++++++" } //创建一个 Action , 添加到 Action 列表的尾部 doLast(new Action<Task>() { @Override void execute(Task task) { println "action3++++++++++" } }) //创建一个 Action , 添加到 Action 列表的尾部 doLast { println "action4++++++++++" } } 我们在上面的例子的 Task 队列中,先添加了 action1,然后再在头部添加了 action2,现在队列从头到尾应该是"action2=>action1"然后再在队尾增加 action3,action4,最终队列里面从头至尾依次为:“action2 => action1 => action3 => action4”。我们下面执行 apiTask 任务看看是不是输出这个顺序。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |