全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス
クラス java.io.FileDescriptor
java.lang.Object
|
+----java.io.FileDescriptor
- public final class FileDescriptor
- extends Object
ファイル記述子クラスのインスタンスは、下層の特定のマシンに依存するオープンファイルやオープンソケットを表現する構造体への不透明なハンドルとして働きます。
アプリケーションはファイル記述子を作成してはいけません。
- 参照:
- FileInputStream, FileOutputStream, SocketInputStream,
SocketOutputStream
-
err
- 標準エラーストリームへのハンドル。
-
in
- 標準入力ストリームへのハンドル。
-
out
- 標準出力ストリームへのハンドル。
-
FileDescriptor()
-
-
sync()
- 全てのシステムバッファが下層のデバイスと同期をとるように強制する。
-
valid()
- ファイル記述子オブジェクトが有効かどうかをテストする。
in
public static final FileDescriptor in
- 標準入力ストリームへのハンドル。
out
public static final FileDescriptor out
- 標準出力ストリームへのハンドル。
err
public static final FileDescriptor err
- 標準エラーストリームへのハンドル。
FileDescriptor
public FileDescriptor()
valid
public native boolean valid()
- ファイル記述子オブジェクトが有効かどうかをテストします。
- 返り値:
- ファイル記述子オブジェクトが有効なオープンファイルまたはソケットを表しているとき
true
、 それ以外の場合は false
。
sync
public native void sync() throws SyncFailedException
- 強制的に全てのバッファに下層デバイスとの同期を取らせます。このメソッドは、FileDescriptor の修正されたデータと属性値が該当するデバイスに書き込まれてから終了します。
特に、FileDescriptor がファイルシステムのファイルのような物理記憶メディアに関するものであるときには、sysnc はこの FileDesecriptorに関連したバッファのメモリ内部での変更事項が全て物理メディアに書き込まれるまでは戻りません。
sync は物理記憶(例えばファイル)の状態を完全に把握する必要のあるときコードの中で使用されるものです。
例えば、伝票操作機能を提供するクラスでは、ある取り引きの結果生じたファイルの変更を確実に記憶メディア側に保存させるために使用します。
sync が影響を与えるのは FileDescriptorのバッファのダウンストリームのみです。
アプリケーションが(例えば、BufferedOutputStream によって)メモリ内部でのバッファリングを行っているならば、これらのバッファを FileDescriptor へ(例えば、OutputStream.flush を呼び出して)フラッシュさせて、データが sync の影響を受けないようにしなければなりません。
- 例外: SyncFailedException
- バッファがフラッシュできないとき、または全てのバッファと物理メディアとの同期をシステムが保証できないとき。
全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス