美文网首页
项目中定时器的使用

项目中定时器的使用

作者: 拉贝 | 来源:发表于2017-10-11 15:58 被阅读3次

       在做投影仪项目的时候,**有线连接界面**  的工作是我开发负责,其中涉及到定时器的使用,因为**在有线网络光纤插入和拔出这两种时刻,系统不会给出任何提示**,所以需要在这个界面需要启动定时器定时轮询检查有线网络是否成功连接。

 Timer timer;
    /**
     * 当有线没有连接时,定时搜索wifi
     */
    private void startTimer() {
        if (timer == null) {
            timer = new Timer();
            TimerTask task = new TimerTask() {
                @Override
                public void run() {
                    if (networkUtil.ethernetLink()) {
                        Log.e("网络", "定时器搜索到有线连接上!!");
                        EthernetConnectActivity.this.runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                setEthernetInfo();
                            }
                        });
                    } else {
                        Log.e("网络", "定时器搜索到有线连接断开!!");
                        EthernetConnectActivity.this.runOnUiThread(new Runnable() {
                            @Override
                            public void run() {
                                setNetInfoDefault();
                            }
                        });
                    }
                }
            };
            timer.schedule(task, DELAY, PERIOD);
        }
    }

在这里需要注意的是:定时器要记得关闭哦!

 @Override
    protected void onStop() {
        super.onStop();
        if (timer!=null){
            timer.cancel();
            //purge()方法用于从这个计时器的任务队列中移除所有已取消的任务
            timer.purge();
            timer =null;
        }
    }

在编码之余,我深深的感受到,我们不能停留在了解调用API层面上,就例如上面提到的定时器的使用,定时器的使用方式还有很多个,例如定时器的几种实现方式,我们不能仅仅停留在会用上,还需要知道他应该在什么情况下使用,使用过程中会出现什么问题,有什么问题是可以提前规避的,这些才是优秀的程序员应该学习和掌握的。

相关文章

  • 实战中总结iOS定时器timer的注意点

    本文旨在总结项目中因使用各类定时器而踩到的坑,并附上经验总结。 NSTimer NSTimer是最常用的定时器,坑...

  • RxSwift中的Timer

    RxSwift中的Timer 我们在项目中经常会用到定时器,先来看下swift中使用定时器的几种方式: Timer...

  • 项目中定时器的使用

    在做投影仪项目的时候,**有线连接界面** 的工作是我开发负责,其中涉及到定时器的使用,因为**在有线网络光纤插...

  • 【Android 基础】AlarmManager 使用

    项目中使用到定时任务,使用Timer 与 TimerTask 类完成定时,但 app 退出后,Timer 定时器会...

  • C#高精度定时器

    因在项目中需要使用定时器播放帧动画,系统自带的定时器每秒最多执行60帧,因为误差较大,如果用于计时的任务,则会随着...

  • android定时器的使用

      目前在项目中使用过的定时器主要是两种方式:1.handler的延时任务 2.timer的定时器   下面主要来...

  • 定时器和线程问题

    定时器和线程 定时器并不是JavaScript中的一项功能。 定时器作为对象和方法的一部分,才能在浏览器中使用。 ...

  • Timer定时器的使用

    1.java项目中使用定时器来完成定时任务 public void getEmpById() throws IOE...

  • iOS GCD定时器

    简介 项目中有时候会碰到使用定时器的问题,其中GCD定时器因为比较精准,适用于许多场景,今天整理出来供大家借鉴。 ...

  • GCD实现倒计时按钮

    在常规项目中,经常会使用到定时器.我收集了一下实现方法记下来.

网友评论

      本文标题:项目中定时器的使用

      本文链接:https://www.haomeiwen.com/subject/krpwyxtx.html