
android线程
文章平均质量分 51
窦哲
态度角度思考改变行动时间差
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2.2 Thread Communication -- Shared Memory,BlockingQueue
Shared Memory使用共享内存的方式来实现线程间通信。在这么方式中共享对象的引用会存在本地的线程栈(Stack)中,而这个对象本身是存储在内存块中的。 使用信号(Signaling)的方式操作当线程1还未执行到某个特殊的状态时,那么线程2就无法继续往下执行,线程2就要调用wait()/wait(timeout)或await()/await(timeout)来等待; 当线程1已经执行到某个原创 2017-07-12 16:21:26 · 213 阅读 · 0 评论 -
6. Loader
1. Loader FrameworkLoader framework在与content provider或者其他数据源进行操作时,提供了一种健壮的异步操作。 Loader Framework有那些特性:Asynchronous data management Loader是在后台线程与数据源进行操作的,当数据源有新的数据时会在App中触发一个Callback。Lifecycle manag原创 2017-09-02 20:38:34 · 623 阅读 · 0 评论 -
5. AsyncTask
1. FundamentalsAsyncTask方法: 执行流程: 注意: There are a few threading rules that must be followed for this class to work properly:The AsyncTask class must be loaded on the UI thread. This is done aut原创 2017-08-08 17:40:45 · 483 阅读 · 0 评论 -
4. HandlerThread
1. FundamentalsHandlerThread是一个内部包含Thread,Looper,MessageQueue的线程。HandlerThread 开启之后,它就会创建一个Looper和MessageQueue的队列,等待处理发送过来的消息。 Eg:HandlerThread handlerThread = new HandlerThread("handlerthread");hand原创 2017-07-30 19:27:52 · 341 阅读 · 0 评论 -
3. Managing the lifecycle of a Basic Thread
1. BasicsLifecycle可以在Thread.State类中查看Thread的状态。 New在Thread执行之前,Thread对象被创建。这个实例不会建立执行环境。默认Thread构造方法分配新创建的Thread的优先级和所属的Thread Group与创建这个新Thread所在的线程是相同的(The default construction assigns the newly cre原创 2017-07-25 11:11:43 · 332 阅读 · 0 评论 -
2.1 Thread Communication -- Pipe
Android中的线程间通信一般使用Handler-Looper机制,而我们也可以使用Java中的方式来实现线程间通信。Pipe(管道)一个管道为两个线程在同一个进程中提供了一条通道,然后连接并建立一个单方向的通道。在这个通道上,一个生产者线程写数据到管道中,另一个消费者线程从管道中读数据。在Linux中,Pipe operator是跨进程工作的,而在Java中虚拟机中跨线程工作的(在同一个进程中)原创 2017-07-07 16:45:30 · 2494 阅读 · 0 评论 -
1. Android Application Thread 基础
Android Application ThreadUI ThreadUI Thread是应用中的主线程,被用于执行Android Component和更新屏幕上的UI。 UI Thread是一个顺序的事件处理线程,它能执行来自平台其他线程发送来的事件。Binder ThreadBinder Thread被用于不同进程中的线程通信。Background Thread应用中显式创建的所有线程都是Ba原创 2017-07-06 16:48:23 · 715 阅读 · 0 评论 -
2.4 Communicating with the UI Thread
1. 子线程给UI Thread传message子线程只需要把message发到UI Thread的message queue中即可。message传到UI Thread是通过UI Thread的Looper操作的,而UI Thread Looper在应用中可以通过Looper.getMainLooper()方法全局访问到,因此使用类似下面的方式就能把子线程的message传到UI Thread:/原创 2017-07-14 14:48:48 · 329 阅读 · 0 评论 -
2.3 Thread Communication -- Android Message Passing
Android Message Passing1. Message Passing机制介绍之前介绍的线程间通信方式 - Pipe,Shared Memory,Blocking Queue,都会导致线程阻塞,因此影响Android UI线程的刷新,Android通过Message Passing的机制实现了一种无阻塞的生产者-消费者模式。 相关的类: Message被生产者线程插入到Message原创 2017-07-14 14:32:40 · 409 阅读 · 0 评论 -
7. Binder, AIDL, Messenger
Android RPC Linux系统IPC包括:signals,pipes,message queues,semaphores,shared memory。Android中添加了Binder机制和AIDL来实现IPC。 RPC(Remote Procedure Call – 远程过程调度)基本步骤介绍:Method and data decomposition(分解), also known a原创 2017-11-02 16:59:58 · 543 阅读 · 0 评论