展会信息港展会大全

Android的外来者: Task 上层编程/用户界面
来源:互联网   发布日期:2016-01-14 12:39:15   浏览:1782次  

导读:应该说, Android中, 表面上看似概念林立, 其实大多仍然是传统概念 比如:进程, Application, Thread, Activity等等 唯独 Task是个外来者 Android的运行机制基本上是这样的: 所有的程序由进程承载 ...

应该说, Android中, 表面上看似概念林立, 其实大多仍然是传统概念 . 比如:进程, Application, Thread, Activity等等. 唯独 Task是个"外来者".

Android的运行机制基本上是这样的: 所有的程序由进程承载, 像在其它所有系统上一样. 而Application就是这里所谓的"程序", Thread就是这里面所谓的线程. 其实很怀疑Android没有对Thread的任何管理, 只是任由其自生自灭. 如果是这样的话, 那么Android所做的全部就是在OS上建立了一个Activity与Task的框架. 而因为Activity又是跟着Application存活在同一个进程中的, 也就是说, 在Android中, 其实真正存在的只有两个东西: 进程与Task. 一个是横向的划分一个是纵向的划分.而所有其它如Application, Thread, Activity等等, 其实全部都是活在进程当中的. 而Task能接受的却只有一个东西那就是Activity. 所以说,Task是个外来者. 它虽然与Activity共同构成Android系统中的新概念, 但其由于其显然游离于其它所有元素之外所以变成一个门外汉.

Android设计Task的原因应该只是为了体验. 或者说, Android在一种以Application为组织单元及基本概念的传统底层架构上实现了一个极其富有用户价值主义色彩的上层编程/用户界面.

从这个角度看, Activity可以被视为一种用户体验划分, 也可以被视为一种任务重构. 因为普通的传统的"任务"观就是一个进程就是一个任务, 任务即进程而进程即任务, 两者是严格一对一的. 任务被Encoded在程序中, 而程序跑在进程中, 所以一切任务都在进程中. 因此才说android拥有一个非常优秀的设计思想: 它是第一个把任务与进程实施了分离的OS. 虽然它仍然没有彻底解决任务模型的问题或者说甚至没有对它进行真正的抽象(与系统分离而不只是与进程分离因为进程仍然属于系统这个范畴, 仍然是机器指令),但即使是这仍然构成非常巨大的进步(在一个演绎型即冯诺依曼型系统上).

赞助本站

人工智能实验室

相关热词: Task Android

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港