###BIO:同步阻塞 主線程發起io請求後,需要等待當前io操作完成,才能繼續執行。 ###NIO:同步非阻塞 引入selector、channel、等概念,當主線程發起io請求後,輪詢的查看系統是否準備好執行io操作,沒有準備好則主線程不會阻塞會繼續執行,準備好主線程會阻塞等待io操作完成。 # ...
BIO:同步阻塞
主線程發起io請求後,需要等待當前io操作完成,才能繼續執行。
NIO:同步非阻塞
引入selector、channel、等概念,當主線程發起io請求後,輪詢的查看系統是否準備好執行io操作,沒有準備好則主線程不會阻塞會繼續執行,準備好主線程會阻塞等待io操作完成。
AIO:非同步非阻塞
主線程發起io請求後,不會阻塞,當操作系統io操作完成後向回調函數傳遞結果,應用程式通過回調函數獲得io操作結果。
NIO和AIO區別:NIO是io操作准備好,然後阻塞等待io完成,AIO不需要等待IO操作,io操作完成操作系統會通過回調通知主線程