java - 如何在 Xamarin Android 中等待处理程序线程完成?

标签 java c# android xamarin xamarin.android

如何等待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/

相关文章:

java - JFileChooser 有时会挂起

java - Android - 蜂窝或 ICS 完全全屏

java - Sentry 机器人 : Ignore stacktraces that do not contain my package

android - Android 中的电源配置文件

Parse.com 中的 JavaScript 子类化

java - 相当于在 Java 中扩展一个 final 类

c# - 替换 C# 中的字符“

c# - 超过 "Table.Rows"的 foreach 中的空引用

c# - 如何将 Dapper Extensions 映射到多个数据库?

Android 找出对话框何时显示在屏幕上