Runnable run()方法有时会调用两次?

时间:2011-10-27 11:28:46

标签: android

我是一名新的Android开发人员。我正在使用Handler类来安排一些操作。所以我创建了可调用的对象来调用我的一些实例方法。

但我有一个问题。有时我的Runnable对象中的run()方法被调用两次。

可能是什么问题?

并且有代码

//deneme is a Handler.
deneme.postDelayed(new Runnable() {

            @Override
            public void run()
            {
                    randomOyna();
                    //the instance method that I call.
            }
        }, 1000);

2 个答案:

答案 0 :(得分:0)

只是通过查看你给我们的提示看不到错误......但你可能会尝试普通的旧java来运行线程而不是处理程序......祝你好运......

Look here for more details

答案 1 :(得分:0)

如果不安排您的Handler在另一个Thread上运行而不是UI线程,则执行中可能会有一个隐藏的延迟,因为您的Runnable也会在UI线程因此只有在有“时间”时才允许运行。有了这个隐藏的延迟,它似乎可以运行两次,但实际上它只是在经常延迟Runnable之前运行并且过度延迟。