TornadoFX runAsyncWithProgress with nullable return 类型

TornadoFX runAsyncWithProgress with nullable return type

在 TornadoFX 中,runAsyncWithProgress 函数当前(从版本 1.7.19 开始)定义为:

fun <T : Any> Node.runAsyncWithProgress(progress: Node, op: () -> T): Task<T>

绑定在 T 上的 Any 禁止我使用像 String? 这样的可空类型。当操作可以有一个 'null result'(例如被取消)时,这是非常不方便的。

我注意到 runAsync 支持可为 null 的值,这种差异是有原因的还是某种疏忽?我在源代码中找不到任何会导致可能为空值的问题。

事实证明这确实是一个疏忽,现在 fixed