“异步返回”是什么意思?

时间:2019-07-19 09:09:30

标签: promise future writing

许多编程语言都有异步功能的概念。异步函数的返回值本身不是必需的类型,而是最终将包含该值的promise / future。

我正在做技术写作,我在努力为异步返回值的行为提出一个简洁的术语。考虑以下同步功能:

function foo(): boolean { ... }

在这里,我写“如果foo返回true,...” 这是完全可以理解的。

现在考虑此异步函数:

function bar(): Promise<boolean> { ... }

我可以这样写:“如果bar返回的诺言解析为true,...” 从技术上讲这是正确的,但是比较尴尬,特别是如果反复使用

我可以这样写:“如果bar异步返回true,...” 这比较短,但是我对此不太满意。对我来说,它强调的是“异步”,而不是“ true”。

我可以这样写:“如果bar返回true,...” 这很短,但从技术上讲是不正确的。

我想写一些类似的东西:“如果bar产生true,...” ,但是yield的动词在上下文中已经具有不同的含义(至少在某些语言中)。

表达这个概念是否有简洁的方法?

1 个答案:

答案 0 :(得分:1)

我认为 yield (或它的同义词 produce )完全可以。从上下文中应该清楚,承诺是意味着。不清楚时,我将使用冗长且技术上准确的版本(返回承诺,并用实现)。

bar()解析为true 时,另一种选择是,省略了隐式的“呼叫返回的承诺”,而是使用bar()而不是{{ 1}}来引用调用的结果,而不是函数本身(这不是可以解决的承诺)。