私はSocketChannel
,FileChannel
等のクラスを見ているので、概念的な違いを明確にするための区別を知りたいです。 Socket
とファイルI/Oストリームとの比較IOストリーム上のチャンネルラッパーですか?
私が知っているように、I/Oストリームは連続的にアクセスされなければならない。すなわち、それらは読み書きが可能な一連のバイトである。また、Buffered Streamを使用してI/Oの効率を高めることもできます。
したがって、Streamsと比較すると、全く新しいコンセプトの「チャンネル」、またはStreamsの単なるラッパーですか?
はい、「ストリームは一連のバイトです」と言えば、その意味で両方が異なる場合はどのようなチャネルですか?
全く新しい。したがって、「nio」(または「新しいio」)。 IOストリーム*はある時点でチャンネルに実装されている可能性があります。 –
いいえ。できません。ストリームはノンブロッキングモードではありません。それらは非同期に閉じることはできません。ストリーム書き込みはカウントを返しません。ストリームにはNIOのすべての機能を実装するのに十分な機能がありません。 – EJP