1. 概述

Timer是一种定时器工具,用来在一个后台线程计划执行指定任务。它可以计划执行一个任务一次或反复多次。

TimerTask一个抽象类,它的子类代表一个可以被Timer计划的任务。

TimerTask运行在一个单独的线程里,而不是UI线程。所以使用timer时,注意android的单线程原则,确保线程安全。不要在TimerTask的run方法中做UI相关的操作。如:TextView.setText()等,这样可能会导致UI线程阻塞。如果需要可以使用handler向UI线程发消息,具体处理由UI线程自己完成。在使用完Timer之后,要使用Timer的cancel方法取消Timer,否则Timer一直在运行。

2. Timer类的方法
    schedule(TimerTask task,  long delay,  long period)
    schedule(TimerTask task,  Date time,  long period)
    scheduleAtFixedRate(TimerTask task,  long delay,  long period)
    scheduleAtFixedRate(TimerTask task,  Date firstTime,  long period)

3. 程序示例

//定义timer和timertask
private Timer myTimer = new Timer();
private TimerTask DateTimeTask = new TimerTask(){@Overridepublic void run(){Message msg = new Message();msg.what = 0x124;myGetTimeHandler.sendMessage(msg);}
};@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);showTimeTextview = (TextView)findViewById(R.id.TimeTextview);showDateTextview = (TextView)findViewById(R.id.DateTextview);//在这里 启动timermyTimer.schedule(DateTimeTask, 0, 10000);//单位是毫秒
}

参考文档

android定时器的使用

Android Timer和TimerTask

Android定时器Timer和TimerTas的使用相关推荐

  1. Android定时器Timer简单使用

    Android定时器Timer简单使用 Timer简介 Timer使用 总结 Timer简介 Timer(计时器)位于 java.util包下,可用于创建定时任务,任务可以安排为一次性执行,也可以定期 ...

  2. Android 定时器Timer的使用

    转载自: https://www.jianshu.com/p/dd5de8dbbe81 定时器有什么用 在我们Android客户端上有时候可能有些任务不是当时就执行,而是过了一个规定的时间在执行此次任 ...

  3. Android 定时器Timer

    定义一个定时器及定义一个TimerTask处理handler事件 Timer timer = new Timer();TimerTask task = new TimerTask() {@Overri ...

  4. Android定时器Timer

    原文链接:https://blog.csdn.net/u012849206/article/details/50487644 介绍 Timer是线程调度工具.作用:定时,延时,周期性执行任务. Tim ...

  5. java定时器关闭再重启_Android定时器Timer的停止和重启实现代码

    本文介绍了Android定时器Timer的停止和重启实现代码,分享给大家,具体如下: 7月份做了一个项目,利用自定义控件呈现一幅动画,当时使用定时器来控制时间,但是当停止开启时总是出现问题.一直在寻找 ...

  6. 【Android 异步操作】Timer 定时器 ( Timer 与 TimerTask 基本使用 | Timer 定时器常用用法 | Timer 源码分析 )

    文章目录 一.Timer 定时器基本使用 二.Timer 定时器常用用法 三.Timer 源码分析 四.Timer 部分源码注释 五.源码及资源下载 参考文档 : Timer 定时器 API 文档 T ...

  7. Java多线程学习笔记20之定时器Timer

    详细代码见:github代码地址 本节内容: 定时器Timer的使用及分析 1) 如何实现指定时间执行任务 2) 如何实现按指定周期执行任务 第五章 定时器Timer 定时/计划功能在移动开发领域使用 ...

  8. android 定时器 耗电,Android定时器

    CountDownTimer new CountDownTimer(3000, 1000) { public void onTick(long millisUntilFinished) { if (m ...

  9. 【转】 Android定时器

    转载自:http://www.android-study.com/pingtaikaifa/508.html 在Android开发中,定时器一般有以下3种实现方法: 一.采用Handler与线程的sl ...

最新文章

  1. ADO.NET Entity Framework如何:通过每种类型一个表继承以定义模型(实体框架)
  2. 循环神经网络教程3-BP算法和梯度消失问题, Part 3 – Backpropagation Through Time and Vanishing Gradients
  3. vc为啥要更新java_Java9被无情抛弃,Java8直接升级到Java10 ! !
  4. STM32F0使用LL库实现DMA方式AD采集
  5. 在一个windows服务下,安装多个mysql服务。
  6. 详解Javascript的继承实现
  7. android录音工具,推荐四款十分好用的安卓录音应用
  8. 多个版本的BIND DNS软件都存在一个严重漏洞
  9. 苹果id被停用_三招解决Apple ID停用问题
  10. python--基本操作
  11. IBM发展过程中给我们带来什么启示?
  12. Traffic shaping 一个事半功倍的程序化”噪音“解决方案
  13. vue 脚手架 图片预加载
  14. 【网络流24题】太空飞行计划
  15. 【codecombat】 试玩全攻略 第六关 cell commentary
  16. uniapp uni-icons组件自定义图标
  17. 开发板usb虚拟串口
  18. winbox设置端口映射
  19. 硬件工程师-BOOST升压电源设计
  20. Java 自动按键,以及cmd脚本调用

热门文章

  1. excel如何删除空白行_将EXCEL工作表中无用处的空白行删除
  2. Ubuntu 12.04 改造指南
  3. angular2杂学
  4. Flash,Silverlight,Win32:2011三大垂死平台
  5. Word控件Spire.Doc 【文本】教程(21) ;如何在 C# 中用 Word 文档替换文本
  6. php发邮件有时很卡,phpmailer发邮件常见的问题及解决方法汇总
  7. Android 获取屏幕宽高的正确姿势
  8. 基于vue和nodejs的项目知识信息分享平台
  9. 64位Linux的内核和用户地址空间
  10. 程序员健康最佳作息表,建议收藏!!