使用Runnable和Handler做定时任务
程序员文章站
2022-03-22 08:07:53
...
1.定义Handler:
2,定义Runnable:
3.启动线程:
Handler onlineHandler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
switch (msg.arg1) {
case 0: {
home_0.setImageResource(R.drawable.home_2_style);
break;
}
case 1: {
home_0.setImageResource(R.drawable.home_2_status_style);
break;
}
}
home_0.postInvalidate();
}
};
2,定义Runnable:
Runnable onlineRunnable = new Runnable() {
@Override
public void run() {
Message m = new Message();
if (readRd() != null && readRd().trim().equals("0")) {
m.arg1 = 0;
} else {
m.arg1 = 1;
}
onlineHandler.sendMessage(m);
//每隔5秒执行一次
onlineHandler.postDelayed(onlineRunnable, 5000);
}
3.启动线程:
onlineHandler.post(onlineRunnable);
推荐阅读
-
Asp.Net Core 使用Quartz基于界面画接口管理做定时任务
-
Python使用crontab模块设置和清除定时任务操作详解
-
使用Python做定时任务及时了解互联网动态
-
SpringBoot2.0 基础案例(04):定时任务和异步任务的使用方式
-
CentOS和Linux使用crontab运行定时任务
-
Java 中Timer和TimerTask 定时器和定时任务使用的例子
-
Java 中Timer和TimerTask 定时器和定时任务使用的例子
-
CentOS和Linux使用crontab运行定时任务
-
Java 中定时器和定时任务使用的实例
-
记录Spring boot首次使用定时任务和多线程