搞懂BIO NIO AIO的原理區別

2021-09-10 12:08:43 字數 415 閱讀 9700

bio(blocking io)和nio(non-blocking io) 從同(異)步和阻塞兩個維度來區分

同步和非同步針對的是,關心的是事件通知的方式。

比如, 你關注某個明星, 想知道他最近的行程。  

同步:你自己一直去盯著看他有沒有什麼行程發布,此時會出現 阻塞和非阻塞的區分: 如果你盯著他的行程發布的事情,

做不了其他事情,那就是阻塞的,你還能去喝水,就是非阻塞的

非同步:他新的行程發布了,他會主動的通知你

同步阻塞:bio,自己一直關注,不能去做其他事情,呆呆的等著他發行程資訊

同步非阻塞:nio,自己關注,可以做其他事情,只是需要時不時的自己回來看看他有沒有發新行程

非同步非阻塞:aio/ajax,他有新的行程會通知你,這期間你可以去做其他事情

非同步阻塞沒實際意義了。。。

分鐘搞懂LSI原理

假設原始矩陣如下 index words 被使用者搜尋到的詞語 titles 文章標題 svd分解後如下 第 個矩陣表示某個詞與主題之間的相關性 有的同學會看到有些資料說,根據lsi可以計算文件文件之間的相似度,這個是怎麼回事呢?我們可以看到上面的 中,每個格仔裡面都有乙個數值,那麼例如 t1和t3...

個人理解的BIO NIO AIO

一般網路通訊設計到兩台電腦a,b。假設每個電腦都是linux核心,那麼兩個使用者程式的通訊過程就是 a上的使用者執行緒 a的核心 a的網絡卡 網線 b的網絡卡 b的核心 b上的使用者執行緒。那麼一般的同步形容的是哪一部分的內容呢?按照我的理解是,對於a b而言,如果是同步,在核心 使用者執行緒或者使...

BIO NIO AIO的形象比喻

bio blocking i o 同步阻塞i o模式。nio new i o 同步非阻塞模式。aio asynchronous i o 非同步非阻塞i o模型。先看阻塞和非阻塞的區別,以燒水為例 阻塞vs非阻塞 人是否坐在水壺前面一直等。同步vs非同步 水壺是不是在水燒開之後主動通知人。再加上同步 ...