日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

同步IO和异步IO的区别?

發布時間:2023/12/10 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 同步IO和异步IO的区别? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.同步IO和異步IO的區別?

????????同步就是在發出一個功能調用時,在沒有得到結果之前,該調用就不返回。也就是必須一件一件事做,等前一件事做完了才能做下一件事。

????????異步的概念和同步相對。當一個異步過程調用發出后,調用者不能立刻得到結果(在此期間,調用者可以去干一些別的事情)。實際處理這個調用的部件在完成后,通過狀態、通知和回調來通知調用者。

舉個例子:

阻塞IO:給女神發一條短信, 說我來找你了, 然后就默默的一直等著女神下樓, 這個期間除了等待你不會做其他事情。
非阻塞IO:給女神發短信, 如果不回, 接著再發, 一直發到女神下樓, 這個期間你除了發短信等待不會做其他事情。
IO多路復用:是找一個宿管大媽來幫你監視下樓的女生, 這個期間你可以些其他的事情. 例如可以順便看看其他妹子,玩玩王者榮耀, 上個廁所等等. IO復用又包括 select, poll, epoll 模式. 那么它們的區別是什么?

1)?select大媽?每一個女生下樓, select大媽都不知道這個是不是你的女神, 她需要一個一個詢問, 并且select大媽能力還有限, 最多一次幫你監視1024個妹子。

2)?poll大媽不限制盯著女生的數量, 只要是經過宿舍樓門口的女生, 都會幫你去問是不是你女神。

3)?epoll大媽不限制盯著女生的數量, 并且也不需要一個一個去問. 那么如何做呢? epoll大媽會為每個進宿舍樓的女生臉上貼上一個大字條,上面寫上女生自己的名字, 只要女生下樓了, epoll大媽就知道這個是不是你女神了, 然后大媽再通知你。

????????上面這四種情況都是同步IO,它們有一個共同點就是, 當女神走出宿舍門口的時候, 你已經站在宿舍門口等著女神了。

異步IO的情況:
????????你告訴女神我來了, 然后你就去打游戲了, 一直到女神下樓了, 發現找不見你了, 女神再給你打電話通知你, 說我下樓了, 你在哪呢? 這時候你才來到宿舍門口。

參考:同步和異步的區別_HarkerYX的博客-CSDN博客_異步和同步

????????同步,可以理解為在執行完一個函數或方法之后,一直等待系統返回值或消息,這時程序是出于阻塞的,只有接收到返回的值或消息后才往下執行其他的命令。(同步如打電話,通信雙方不能斷(我們是同時進行,同步),你一句我一句,這樣的好處是,對方想表達的信息我馬上能收到,但是,我在打著電話,我無法做別的事情。)

????????異步,執行完函數或方法后,不必阻塞性地等待返回值或消息,只需要向系統委托一個異步過程,那么當系統接收到返回值或消息時,系統會自動觸發委托的異步過程,從而完成一個完整的流程。(異步如收發收短信,對比打電話,打電話我一定要在電話的旁邊聽著,保證雙方都在線,而收發短信,對方不用保證此刻我一定在手機旁,同時,我也不用時刻留意手機有沒有來短信。這樣的話,我看著視頻,然后來了短信,我就處理短信(也可以不處理),接著再看視頻)

總結

以上是生活随笔為你收集整理的同步IO和异步IO的区别?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。