1. 程式人生 > >執行緒中的阻塞和非阻塞I/O

執行緒中的阻塞和非阻塞I/O

執行緒中的阻塞和阻塞I/O都提到了阻塞,這兩個有什麼區別呢,想了一下,一般來說,當一個執行緒被阻塞時,控制權交由另一個執行緒。
但是如果是單執行緒程式呢,如果一個執行緒阻塞了,那隻能空等了嗎?所以出現了Twisted,可以讓單執行緒阻塞程式變為非阻塞。還是取決於軟體是怎麼寫的。

所以阻塞和單或多執行緒其實也沒有必然的關係。
附一個很精彩的文章,詳細解釋了epoll。還有個答案講的網絡卡驅動,和本文無關但是很精彩。。以前想過寫linux驅動來著。
epoll的原理