【问题标题】:In Flutter, how to wait for non future function to complete?在 Flutter 中,如何等待非未来函数完成?
【发布时间】:2021-03-17 01:54:50
【问题描述】:

在 Flutter 中,数据计算需要时间来计算。如何等待非未来功能完成? 本地数据操作需要时间来完成。如何将其分配为未来或等待本地功能完成?

【问题讨论】:

  • 如果你的函数是同步的,你别无选择只能等待;在函数完成之前,执行不会返回给调用者。如果函数是异步,那么它应该返回一个Future。如果函数是异步的但不返回Future,那么它是一个即发即弃的函数,调用者没有一般的方法来等待它完成。如果您要问如何使耗时的同步函数异步化,这可能取决于您正在做什么,但通常您可能必须在单独的Isolate 中完成这项工作。

标签: flutter dart flutter-test dart-pub


【解决方案1】:

您需要将它从 UI 线程中取出,然后转到它自己的 Isolate。特别注意Isolate.spawn 在单独的线程中运行代码。

【讨论】:

    猜你喜欢
    • 2019-02-10
    • 2020-10-11
    • 2019-04-20
    • 2015-01-07
    • 2020-07-28
    • 2020-11-20
    • 1970-01-01
    • 2023-01-31
    • 2014-11-11
    相关资源
    最近更新 更多