A Java NIO FileChannel is a channel that is connected to a file. Using a file channel you can read data from a file, and write data to a file. The Java NIO FileChannel class is NIO's an alternative to reading files with the standard Java IO API. A FileChannel cannot be set into non-blocking mode. It always runs in blocking mode. Opening a FileChannel Before you can use a FileChannel you must open
Channel インタフェース群をインプリメントしたクラスの 1 つに FileChannel クラスがあります。クラス名に File とつくぐらいですから、ファイルに特化した Channel ということができます。 今回はこの FileChannel に関して取り上げてみましょう。ですが、FileChannel クラスの機能のうち、Channel インタフェース群で定義されているものは Channel 導入編で取り上げましたから、その他の FileChannel クラス特有の機能に関して調べていきましょう。 Buffer クラスには、読み書きを行った位置を示す position というプロパティがありましたが、FileChannel クラスにも同様に position があります。とはいうものの、Buffer クラスの他のプロパティ limit と capacity はありません。 ファ
5.1. SocketChannel/ServerSocketChannel 従来の java.net パッケージを使用した入出力では、ソケットの accept メソッドや read メソッドなどを呼び出すと接続や入力があるまで処理が待ち状態になりました。 このような入出力待ちの動作のことをブロックといいます。 接続の待ちうけでブロックが発生するため、複数のネットワーク接続を同時に処理するサーバアプリケーションを実装するにはマルチスレッドを利用する必要がありました。 マルチスレッドを利用したサーバアプリケーションの作成方法はネットワークプログラミング3章で説明しています。 しかしスレッドの生成はそれなりにコストのかかる処理であり、アクセスの多いサーバではその影響が無視できないくらい大きくなります。 そこで NIO ではブロックの発生しない入出力を実現する方法が提供されました。 ブロックされ
"NIO.2"がやってきた - JSR 203: More New I/O APIs for the Java Platform 待望のNIO.2の全貌が明らかに J2SE 1.4がリリースされたのはもう5年も前のことだが、そのときに追加されたAPIに入出力機能を拡張する「New I/O」がある。New I/OははJSR 51として標準化されているAPIで、バッファを用いた入出力やノンブロッキング入出力、ファイルのロックやメモリへのマッピングなどといった機能を提供する。これらの機能は非常に強力であり、入出力の効率を上げるには不可欠の存在だが、一方で未完成な部分が多々あり、JCPでは後継となる「NIO.2」の策定作業が進められていた。 4月12日、そのNIO.2のEarly Draftがついに公開された。NIO.2の仕様策定は「JSR 203: More New I/O APIs for t
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く