2012-02-20 38 views

回答

2

對於簡單的程序(例如測試實用程序或專用客戶端)或使用專用線程時。

在第一種情況下,與非阻塞I/O有關的額外邏輯沒有意義,而在第二種情況下,邏輯由涉及多個線程的邏輯代替,其中線程基本上使用阻塞I/O一個專用的客戶端(或服務器),這是以線程和同步的額外資源爲代價來完成的,但通常是合理的,尤其是在無論如何需要多個線程或線程在資源方面便宜的情況下。

非阻塞I/O通常用於庫和其他使用專用線程無法證明資源,可測試性或可移植性問題的情況。它往往歸結爲個人的品味。差異往往是一個風格問題。

相關問題