并发和并行有什么区别?
赞赏的例子.
我尝试阅读 stackoverflow 中有关 的实际使用的许多文章和问题async/await,因此基本上是异步方法调用,但不知何故我仍然无法解码它如何提供并行性和非阻塞行为。我参考了一些这样的帖子
https://news.ycombinator.com/item?id=19010989
所以如果我写一段这样的代码
var user = await GetUserFromDBAsync();
var destination = await GetDestinationFromDBAsync();
var address = await GetAddressFromDBAsync();
Run Code Online (Sandbox Code Playgroud)
尽管这三个方法都是异步的,但代码仍然不会转到第二行从数据库获取,直到完全从数据库destination获取。user
那么这里的并行性和非阻塞行为在哪里呢asyn/await?在执行下一行之前,它仍然等待完成第一个操作。
或者我对异步的总体理解是错误的?
编辑
任何例子都会很有帮助!