|
Foundation 1.1.2 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjava.io.InputStream
java.io.PipedInputStream
public class PipedInputStream
パイプで連結された入力ストリームは、パイプで連結された出力ストリームに接続するようにします。これによって、パイプで連結された入力ストリームが提供するデータバイトは、パイプで連結された出力ストリームにすべて書き込まれます。通常、データは 1 つのスレッドによって PipedInputStream オブジェクトから読み込まれ、対応する PipedOutputStream に別のスレッドによって書き込まれます。単一のスレッドから両方のオブジェクトを使用することは、スレッドがデッドロックする可能性があるため推奨されていません。パイプで連結された入力ストリームには一定範囲のバッファーが含まれるため、読み込み操作と書き込み操作は分離されます。
PipedOutputStream| フィールドの概要 | |
|---|---|
protected byte[] |
buffer
入ってくるデータを置く循環バッファーです。 |
protected int |
in
データの次のバイトをパイプで連結された接続済みの出力ストリームから受け取ったときに、その次のバイトを格納する循環バッファーのインデックス位置です。 |
protected int |
out
パイプで連結されたこの入力ストリームがデータの次のバイトを読み込む、循環バッファーのインデックス位置です。 |
protected static int |
PIPE_SIZE
パイプの循環入力バッファーのサイズです。 |
| コンストラクタの概要 | |
|---|---|
PipedInputStream()
PipedInputStream を、まだ接続されていない状態で作成します。 |
|
PipedInputStream(PipedOutputStream src)
PipedInputStream を作成し、パイプで連結された出力ストリーム src に接続します。 |
|
| メソッドの概要 | |
|---|---|
int |
available()
ブロックせずに入力ストリームから読み込むことができるバイト数を返します。 |
void |
close()
パイプによる入力ストリームを閉じ、そのストリームに関連するすべてのシステムリソースを解放します。 |
void |
connect(PipedOutputStream src)
パイプで連結された入力ストリームをパイプで連結された出力ストリーム src に接続します。 |
int |
read()
パイプで連結された入力ストリームからデータの次のバイトを読み込みます。 |
int |
read(byte[] b,
int off,
int len)
最大 len バイトまでのデータを、このパイプで連結された入力ストリームからバイト配列に読み込みます。 |
protected void |
receive(int b)
データのバイトを受け取ります。 |
| クラス java.io.InputStream から継承されたメソッド |
|---|
mark, markSupported, read, reset, skip |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
protected static final int PIPE_SIZE
protected byte[] buffer
protected int in
in<0 はバッファーが空であることを示し、in==out はバッファーがいっぱいであることを示します。
protected int out
| コンストラクタの詳細 |
|---|
public PipedInputStream(PipedOutputStream src)
throws IOException
PipedInputStream を作成し、パイプで連結された出力ストリーム src に接続します。src に書き込まれたデータバイトは、このストリームからの入力として使えるようになります。
src - 接続先のストリーム
IOException - 入出力エラーが発生した場合public PipedInputStream()
PipedInputStream を、まだ接続されていない状態で作成します。これを使うには、PipedOutputStream に接続する必要があります。
connect(java.io.PipedOutputStream),
PipedOutputStream.connect(java.io.PipedInputStream)| メソッドの詳細 |
|---|
public void connect(PipedOutputStream src)
throws IOException
src に接続します。このオブジェクトが別のパイプで連結された出力ストリームに接続されている場合は、IOException がスローされます。
src がパイプによる未接続の出力ストリームで、snk がパイプによる未接続の入力ストリームである場合、2 つのストリームは次の呼び出しのどちらかによって接続されます。
snk.connect(src)
または
src.connect(snk)
2 つの呼び出しは同じ効果を持ちます。
src - パイプによる接続先の出力ストリーム
IOException - 入出力エラーが発生した場合
protected void receive(int b)
throws IOException
b - 受け取るバイト
IOException - パイプが壊れている場合
public int read()
throws IOException
0 〜 255 の範囲の int として返されます。ストリームの終わりに達したために読み込むバイトがない場合は、値 -1 が返されます。入力データが読み込めるようになるか、ストリームの終わりが検出されるか、または例外が発生するまで、このメソッドはブロックされます。接続されているパイプで連結された出力ストリームにスレッドがデータバイトを提供していたときに、そのスレッドが無効になった場合は、IOException がスローされます。
InputStream 内の read-1
IOException - パイプが壊れている場合
public int read(byte[] b,
int off,
int len)
throws IOException
len バイトまでのデータを、このパイプで連結された入力ストリームからバイト配列に読み込みます。データストリームの終わりに達した場合は、len バイトより少ないデータしか読み込まれません。このメソッドは、少なくとも 1 バイトの入力を利用できるまでブロックされます。接続されているパイプで連結された出力ストリームにスレッドがデータバイトを提供していたときに、そのスレッドが無効になった場合は、IOException がスローされます。
InputStream 内の readb - データの読み込み先のバッファーoff - データの開始オフセットlen - 読み込まれる最大バイト数
-1
IOException - 入出力エラーが発生した場合InputStream.read()
public int available()
throws IOException
available メソッドをオーバーライドします。
InputStream 内の availableIOException - 入出力エラーが発生した場合
public void close()
throws IOException
InputStream 内の closeIOException - 入出力エラーが発生した場合
|
Foundation 1.1.2 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。