如何等待handler.PostDelayed
在函数继续之前完成?
int num = null;
public int DoSomething()
{
var handler = new Handler();
handler.PostDelayed(() => StartCapital(), 10);
handler.PostDelayed(() =>
{
num = StartGain();
}, 300);
return num;
}
如何Wait
对于StartGain()
方法线程要完成吗?该方法需要一些时间才能完成,并且它所在的函数返回 null
最佳答案
这看起来像是理解线程工作方式的问题,您创建一个后台线程,这样您就不必阻塞主线程来完成许多其他用途的某些巨大进程,
就像您的情况一样,方法 StartGain()
将在延迟 300 毫秒后在主线程上执行,因此如果您不想等待,请删除延迟和处理程序并在正常流程上运行它。如果进一步计算需要该方法返回的值,则在继续之前在单独的后台线程中运行它。
关于java - 如何在 Xamarin Android 中等待处理程序线程完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53354775/