Android中实现Runnable接口简单例子

 更新时间:2014年06月26日 09:29:14   投稿:junjie  
这篇文章主要介绍了Android中实现Runnable接口简单例子,着重点在如何实现run()方法,需要的朋友可以参考下

本课讲的是如何实现一个Runnable,在一个独立线程上运行Runnable.run()方法.Runnable对象执行特别操作有时叫作任务。
Thread和Runnable都是基础的类,靠他们自己,能力有限。作为替代,Android有强大的基础类,像HandlerThread,AsyncTask,IntentService。Thread和Runnable也是ThreadPoolExecutor的基础类。这个类可以自动管理线程和任务队列,甚至可以并行执行多线程。

定义一个实现Runnable接口的类

复制代码 代码如下:

public class PhotoDecodeRunnable implements Runnable {
    ...
    @Override
    public void run() {
        /*
         * Code you want to run on the thread goes here
         */
        ...
    }
    ...
}

实现run()方法

Runnable.run()方法包含了要执行的代码。通常,Runnable里可以放任何东西。记住,Runnable不会在UI运行,所以不能直接修改UI对象属性。与UI通讯,参考Communicate with the UI Thread
在run()方法的开始,调用 android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_BACKGROUND);设置线程的权重,android.os.Process.THREAD_PRIORITY_BACKGROUND比默认的权重要低,所以资源会优先分配给其他线程(UI线程)
你应该保存线程对象的引用,通过调用 Thread.currentThread()

复制代码 代码如下:

class PhotoDecodeRunnable implements Runnable {
...
    /*
     * Defines the code to run for this task.
     */
    @Override
    public void run() {
        // Moves the current Thread into the background
        android.os.Process.setThreadPriority(android.os.Process.THREAD_PRIORITY_BACKGROUND);
        ...
        /*
         * Stores the current Thread in the PhotoTask instance,
         * so that the instance
         * can interrupt the Thread.
         */
        mPhotoTask.setImageDecodeThread(Thread.currentThread());
        ...
    }
...
}

相关文章

  • Android图片处理教程之全景查看效果实现

    Android图片处理教程之全景查看效果实现

    这篇文章主要给大家介绍了关于Android图片处理教程之全景查看效果实现的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-06-06
  • Flutter实现悬浮分组列表功能

    Flutter实现悬浮分组列表功能

    这篇文章主要介绍了Flutter-实现悬浮分组列表,我们将介绍如何使用 Flutter 实现一个带有分组列表的应用程序,我们将通过 CustomScrollView 和 Sliver 组件来实现该功能,需要的朋友可以参考下
    2024-08-08
  • Android UTF-8转码实例详解

    Android UTF-8转码实例详解

    这篇文章主要介绍了Android UTF-8转码实例详解的相关资料,需要的朋友可以参考下
    2017-03-03
  • Android 实现仿支付宝的密码均分输入框

    Android 实现仿支付宝的密码均分输入框

    这篇文章主要介绍了Android 实现仿支付宝的密码均分输入框的相关资料,需要的朋友可以参考下
    2017-06-06
  • Android调用系统图库获取图片的方法

    Android调用系统图库获取图片的方法

    这篇文章主要为大家详细介绍了Android调用系统图库获取图片,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-08-08
  • Android  xml解析实例详解

    Android xml解析实例详解

    这篇文章主要介绍了Android xml解析实例详解的相关资料,需要的朋友可以参考下
    2017-06-06
  • Android仿知乎客户端关注和取消关注的按钮点击特效实现思路详解

    Android仿知乎客户端关注和取消关注的按钮点击特效实现思路详解

    这篇文章主要介绍了Android仿知乎客户端关注和取消关注的按钮点击特效实现思路详解的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • 解析Android开发优化之:对Bitmap的内存优化详解

    解析Android开发优化之:对Bitmap的内存优化详解

    在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优化,是Android应用开发中比较重要的内容
    2013-05-05
  • Android ServiceManager的启动和工作原理

    Android ServiceManager的启动和工作原理

    这篇文章主要介绍了Android ServiceManager的启动和工作原理,帮助大家更好的理解和学习使用Android开发,感兴趣的朋友可以了解下
    2021-03-03
  • Android中设置组件半透明和透明的效果示例

    Android中设置组件半透明和透明的效果示例

    这篇文章主要给大家介绍了Android中设置组件半透明和透明效果的相关资料,文中给出了详细的介绍和示例代码,对大家具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2017-05-05

最新评论