可运行,处理程序,线程

时间:2020-01-22 10:58:17

标签: android

我正在制作秒表应用程序,并且通过了代码

 private void runtime(){

        final Handler handler = new Handler();
        handler.post(new Runnable() {
            @Override
            public void run() {
                final TextView timeView = (TextView) findViewById(R.id.textView);
                int hours = sec/3600;
                int min = sec/60;
                int secs = sec%60;
                String time = String.format("%d:%02d:%02d",hours,min,secs);
                timeView.setText(time);
                if(running){
                    sec++;
                }
                handler.postDelayed(this,1000);
            }
        });

我对可运行,处理程序和线程一无所知,请您描述一下这些术语 以及使用它们的原因

1 个答案:

答案 0 :(得分:0)

请参阅android文档以获得清晰的提示

这里发生的是,您正在创建一个“处理程序”来运行“ Runnable”中的代码,其中包含一个new Vue({ i18n, router, ... }) 方法,该方法每1秒重复一次相同的代码,直到您关闭该可运行的

通常,处理程序用于执行“单线程”中的代码块,与线程的消息队列一起执行的代码块是“ Runnable”,Runnable接口具有postDelayed()保存代码的方法

run()方法是Handler类中的一种方法,我们用于调度消息或任何代码的调度执行,在这种情况下,它是每1秒运行一次以上代码。

有关更多信息,请参阅此link