同步与异步

异步与同步都是时间上的关系。

进程:

  异步:

    A和B无时间上的先后等制约关系,A和B工作不互相干涉。

    调用者不需要等到被调用者返回,立即做接下来的事。调用者和被调用者处于异步工作的状态。被调用者完成后,通过状态,通知和回调等方式通知。

    好比:Q发消息,发完之后我去干别的事情,等对方回消息,Q亮了通知我了,我再去处理

  同步:

    A和B有时间上的先后等制约关系。

    是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。

    也就是必须一件一件事做,等前一件做完了才能做下一件事.

    好比:早上起床后,先洗涮,然后才能吃饭,不能在洗涮没有完成时,就开始吃饭.按照这个定义,其实绝大多数函数都是同步调用(例如sin,isdigit等)。

       打电话是一种同步。

  但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。

  异步和同步都是一种合作的工作方式,通过什么方式实现(如多线程实现异步)又是另外一个范畴。

传输方式:

  异步:

    异步双方不需要共同的时钟,也就是接收方不知道发送方什么时候发送,

    所以在发送的信息中就要有提示接收方开始接收的信息,如开始位,同时在结束时有停止位。

  待续...

posted @ 2015-10-08 14:29  shinymood  阅读(234)  评论(0编辑  收藏  举报