码迷,mamicode.com
首页 > 移动开发 > 详细

Android-多线程和异步概述及面试题

时间:2015-07-07 19:37:20      阅读:284      评论:0      收藏:0      [点我收藏+]

标签:多线程   android   异步   

Android-多线程和异步概述
一 Java中的多线程
Runable
Thread
ThreadPoolExector
ScheduleExector

线程同步
Synchronized同步
Lock锁
Semaphore信号量

二 Android中使用多线程
1,为何使用多线程
IO操作:文件,网络,数据库

复杂运算

定时操作

对于耗时操作,应该放到非主线程中运行,从而避免阻塞主线程
为了保证良好的用户体验,
建议对超过50ms(1000ms / 50ms = 20FPS为人眼看到的流畅的画面的最小帧数)
的操作都使用线程处理

2,如何使用多线程或异步,用到的类
Thread
Handle
AsyncTask
AsyncTaskLoader(Android 3.0后使用)
(CursorLoader)

3,多线程和界面交互的方式,用到的类
Activity.runOnUiThread(Runable)

VIew.post(Runable)
View.postDelay(Runable, long)

Handle

AsyncTask

4,Android UI主线程简单原则
不要Block UI Thread
不要在UI线程外直接操作UI

注意事项:
异步等于多线程
Android里面不允许在多线程中直接改变UI

面试题:
1,Android多线程如何实现?
线程和线程池来实现

2,Android的异步任务有什么办法来实现?
AsyncTask
AsyncTaskLoader

3,Android如何确保UI的线程安全?
任何操作UI的代码放在UI线程中操作

版权声明:欢迎交流,QQ872785786

Android-多线程和异步概述及面试题

标签:多线程   android   异步   

原文地址:http://blog.csdn.net/qq_22075977/article/details/46791357

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!