同步

同步  ， 指在一個系統中所發生的事件  之間進行協調 ， 在時間上出現一致性與統一化的現象 。 在系統中進行同步 ， 也被稱爲及時  或同步化的  。 同步 ， 可以理解爲在通信時 、 函數調用時 、 協議棧的相鄰層協議交互時等場景下 ， 發信方與收信方 、 主調與被調等雙方的狀態是否能及時保持狀態一致 。 如果一方完成一個動作後 ， 另一方立即就修改了自己的狀態 ， 就是同步 。 而異步 ， 是指調用方發出請求就立即返回 ， 請求甚至可能還沒到達接收方 ， 比如說放到了某個緩衝區中 ， 等待對方取走或者第三方轉交 ； 而調用結果是通過接收方主動推送 ， 或調用方輪詢來得到 。 同步還可以理解爲 ： 發出一個調用時 ， 在沒有得到結果之前 ， 該調用就不返回 ； 一旦調用返回 ， 就得到返回值 。 換句話說 ， 就是由調用者主動等待這個調用的結果 。 而異步則是相反 ， 調用在發出之後 ， 這個調用就直接返回了 ， 所以沒有返回結果 。 當一個異步過程調用發出後 ， 調用者不會立刻得到結果 。 而是在調用發出後 ， 被調用者通過狀態 、 通知或通過回調函數 ， 讓調用者能響應結果 。 對於非阻塞情形 ， 同步非阻塞是觀察者定期主動的去查看目標對象狀態 ； 異步非阻塞是目標對象狀態改變後去通知觀察者做出相應處理 。