Sha*_*ash 20 c asynchronous synchronous
我试图理解术语同步和异步通信,但我有点困惑.我试图深入研究这一点,但仍然存在混淆.我的问题如下:
1.同步和异步通信如何工作?还参考上面提到的用于异步通信的信号是什么.
2.同步和异步过程如何工作?
任何说明这一点的例子都会有所帮助.
如果这是一个非常简单的问题,请道歉.我是编程新手.希望你的答案能帮助我.提前致谢!!!!
Hub*_*ast 94
通过电话呼叫某人是同步.每封邮件与他通信是异步的.
同步
当我打电话给你时,我拨打你的电话号码然后等你拿到电话.然后你说些什么,在同一时刻我会听你的.完成后,我会向您发送数据(与您交谈),并在您收到数据的同一时间(听我说).在我们的沟通结束时,我们中的一个人说"转发结束"(再见),另一个说"Acknoledged"(再见),然后两个都响了.
异步
我给你写了一封信.我把它放到邮局,它将被发送给你.与此同时,我不等待.我做了很多不同的事情.然后你收到了这封信.你读它的同时我还做了很多不同的事情.然后你给我写了一个答案然后发给我.在所有那些我没有参与的事情中.在第二天,我从系统(邮递员)获得(同步)消息(信号).它(他)说:"这是给你的信息".或者,我可以每隔五分钟轮询我的收件箱,检查是否有新信件.然后我暂停我的其他工作,收到你的来信并阅读你的答案.然后我按照这个答案做点什么.但这是你不会注意到的事情,因为你没有参与我对异步答案的处理.
kos*_*čák 18
同步您的代码发送消息,调用函数等,并被阻止,直到答案,返回值等到达.
异步你的代码在发送消息/调用函数后继续执行,你通常会将一个引用传递给一个回调函数,该函数在答案到来时执行(可能在一小时,几天,几年内发生),同时你的主线程仍在继续.