同步(Synchronous)和异步(Asynchronous)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了同步(Synchronous)和异步(Asynchronous)相关的知识,希望对你有一定的参考价值。
同步和异步通常用来形容一次方法调用。同步方法调用一旦开始,调用者必须等到方法调用返回后,才能继续后续的行为。异步方法调用更像一个消息的传递,一旦开始,方法调用就会立即返回,调用者就可以继续后续的操作。而异步方法通常会在另外一个线程中“真实”地执行。整个过程,不会阻碍调用者的工作。对于调用者来说异步调用似乎是一瞬间就完成了。如果异步调用需要返回结果,那么当这个异步调用真实完成时,则会通知调用者。
打个比方,比如我们去购物,如果你去商城实体店买一台空调,当你到了商场看中了一款空调,你就想售货员下单。售货员去仓库帮你调配物品。这天你热得实在不行了,就催着商家赶紧给你送货。于是你就等在商店里,候着他们,直到商家把你的空调和你一起送回家里,一次愉快的购物就结束了。这就是同步调用。
不过,如果我们赶时髦,就坐在家里打开电脑,在网上订购一台空调。当你完成网上支付的时候,对你来说购物过程已经结束了。虽然空调还没有到家,但是你的任务都已经完成了。商家接到了你的订单后,就会加紧安排送货当然这一切已经跟你无关了。你已经支付完成,想干什么就能去干什么,出去溜圈都不成问题,等送货上门的时候,接到商家的电话,回家一趟签收完事,这就是异步调用。
以上是关于同步(Synchronous)和异步(Asynchronous)的主要内容,如果未能解决你的问题,请参考以下文章
同步(Synchronous)和异步(Asynchronous)
阻塞(Blocking)非阻塞(Non-Blocking)与同步(Synchronous)异步(Asynchronous)