如何阻止函数运行代码直到满足条件

时间:2016-10-15 22:33:54

标签: java android-studio wait

这是我的代码的简化版本。 function1()必须检查互联网上的内容。它必须在应用程序的后台(我不能改变它),它允许其余的代码在检查互联网时运行。此功能可能需要几秒钟才能完成。我无法将日志放在函数1的末尾,因为无论function1是否成功,它都需要运行,但只有在完成尝试之后才能运行。如何在不使用计时器的情况下实现这一目标?

if (condition) {

    if (condition2) {
        function1();
    }

    Log.i("Info", "This should not appear until function1 completes or fails");
}

1 个答案:

答案 0 :(得分:0)

不要经常检查;这称为忙等待并且效率低下,尤其是在移动设备上(因为设备无法进入低功耗模式)。相反,使用AsyncCallback运行function1并将日志消息放入回调中。