-2
我正在嘗試編寫一個非阻塞客戶端/服務器,我注意到Socket提供了getInputStream()
和getOutputStream()
,但SocketChannel提供了read()
和write()
。爲什麼Socket使用流,但NIO SocketChannel使用讀/寫?
下面的問題都是相關的,是爲了更好地瞭解情況:
- 爲什麼這些對象如何提供分組數據有什麼不同?
- 這是否是阻塞vs非阻塞的副作用還是簡單的 的實施?
- 這是我在決定如何從套接字讀取時需要考慮的事情嗎?
- 我可以收到一個不完整的數據包,其緩衝區在任一實施中的結束時間早於預期嗎?
有沒有這樣的事情'NIO套接字'。 – EJP