开发者社区> 问答> 正文

请问android的异步请求用那种比较好呢

这里说比如一般的异步请求我会使用new Thread()这种方式,也是我用过最多的,虽然很容易出现anr,但是我很少遇到过,请问大神么觉得平常异步请求用那种比较好呢。

展开
收起
爵霸 2016-03-20 11:41:52 2085 0
1 条回答
写回答
取消 提交回答
  • AsyncTask实现的原理和适用的优缺点
    AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI主线程.
    使用的优点:
    简单,快捷
    过程可控
    使用的缺点:
    在使用多个异步操作和并需要进行Ui变更时,就变得复杂起来。

    thread是java中的线程类,在andoid中其实通过Handler实现的。

    Handler的特点
    Handler可以分发Message对象和Runnable对象到主线程中, 每个Handler实例,都会绑定到创建他的线程中,
    它有两个作用:
    (1)安排消息或Runnable 在某个主线程中某个地方执行
    (2)安排一个动作在不同的线程中执行
    Handler中分发消息的一些方法
    post(Runnable)
    postAtTime(Runnable,long)
    postDelayed(Runnable long)
    sendEmptyMessage(int)
    sendMessage(Message)
    sendMessageAtTime(Message,long)
    sendMessageDelayed(Message,long)
    以上post类方法允许你排列一个Runnable对象到主线程队列中,
    sendMessage类方法, 允许你安排一个带数据的Message对象到队列中,等待更新.

    2019-07-17 19:09:19
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
《深入探索Android热修复技术原理》 立即下载
From Java/Android to Swift iOS 立即下载
Android组件化实现 立即下载