相关疑难解决方法(0)

如何以及何时使用'async'和'await'

从我的理解主要事情之一async和await要做的就是让代码易于读写-但使用它们等于产卵后台线程来执行持续时间长的逻辑?

我正在尝试最基本的例子.我在内联添加了一些评论.你能为我澄清一下吗?

// I don't understand why this method must be marked as `async`.
private async void button1_Click(object sender, EventArgs e)
{
    Task<int> access = DoSomethingAsync();
    // task independent stuff here

    // this line is reached after the 5 seconds sleep from 
    // DoSomethingAsync() method. Shouldn't it be reached immediately? 
    int a = 1; 

    // from my understanding the waiting should be done here.
    int x = await access; 
}

async Task<int> DoSomethingAsync()
{
    // is …
Run Code Online (Sandbox Code Playgroud)

.net c# asynchronous async-await

989
推荐指数
19
解决办法
78万
查看次数

为什么我们必须使用关键字 async 和 wait 来使其在节点中同步,而关键字实际上是异步的?

所以我在想ok节点是异步的(意味着多行代码同时执行),那么为什么我们使用关键字async(字面意思是异步)来等待关键字await来完成任务(也就是使它是同步的)。为什么没有关键字sync,因为这就是我们正在做的事情?有人可以解释一下关键字 async 的逻辑吗?我感到很困惑。

javascript asynchronous node.js async-await typescript

4
推荐指数
1
解决办法
899
查看次数

async/await 是异步还是同步?

我实际上是第一次深入了解 asyc/await 部分,所以我很难理解它。

我知道 async wait 用于使函数以异步方式运行,但是如何,因为根据定义,“await”关键字会暂停函数的执行,直到承诺得到解决,然后执行中的剩余代码功能。这不是同步行为吗,因为事情正在按应有的顺序执行?

如果我有什么地方错了,请随时帮助我摆脱困惑。

javascript asynchronous async-await

2
推荐指数
1
解决办法
3026
查看次数

关于 javascript 中的 Promise 的澄清

我对有关承诺的某些部分感到困惑,我读过多篇文章,看过多个视频,我想问一些事情:

据我目前的了解,当创建承诺时就开始运行。

如果代码中未使用从承诺返回的值,我是否需要等待承诺?

一个场景是:假设我正在系统中处理一个任务,并且我想将信息记录到 mongodb,当我调用插入函数时,我会得到一个承诺。执行存在,但我不关心它的结果

如果我不等待并且出现错误,我将无法处理它。

上述问题的后续问题:

从我读到的内容来看,await它实际上阻止了异步函数的执行,但是如果它阻止了函数的执行,它怎么不会阻止事件循环的其余部分?

javascript node.js promise

1
推荐指数
1
解决办法
393
查看次数

“async”关键字的含义是什么?

我一直在阅读 Node.js 中的 async/await。我了解到await关键字等待承诺得到解决,或者如果被拒绝则抛出异常。

我还了解到,每个想要使用的功能都await需要标记async。但是,函数被标记为 async 意味着什么?

我能找到的所有资源和博客文章似乎都await非常详细地解释了,但忽略了函数的概念async,或者简单地掩盖了它。例如,笔者是这样表述的:

这使得函数隐式返回一个 Promise。

async关键字的真正作用是什么?函数隐式返回 Promise 意味着什么?除了可以使用之外还有什么副作用await?


好吧,从我迄今为止收到的答案来看,很明显它只是将函数的返回值包装到 a 中Promise,就像那样Promise.then。但这留下了一个新问题。为什么使用的函数await需要async返回 a Promise?

javascript node.js async-await es6-promise

-1
推荐指数
1
解决办法
876
查看次数