JavaTM 2
Platform
Std.  Ed.  v1. 4.0

java.io
Ŭ·¡½º PipedInputStream

java.lang.Object 
  |
  +--java.io.InputStream 
        |
        +--java.io.PipedInputStream

public class PipedInputStream
extends InputStream

ÆÄÀÌÇÁ·Î ¿¬°áµÈ ÀÔ·Â ½ºÆ®¸²Àº ÆÄÀÌÇÁ·Î ¿¬°áµÈ Ãâ·Â ½ºÆ®¸²¿¡ Á¢¼ÓµË´Ï´Ù. Áï, ÆÄÀÌÇÁ·Î ¿¬°áµÈ ÀÔ·Â ½ºÆ®¸²Àº ÆÄÀÌÇÁ·Î ¿¬°áµÈ Ãâ·Â ½ºÆ®¸²¿¡ ±âÀÔÇØÁö´Â µ¥ÀÌÅÍ ¹ÙÀÌÆ®¸¦ Á¦°øÇÕ´Ï´Ù. ÀϹÝÀûÀ¸·Î,PipedInputStream ¿ÀºêÁ§Æ®·ÎºÎÅÍ µ¥ÀÌÅ͸¦ ÀоîµéÀÌ´Â thread¿Í ´ëÀÀÇÏ´Â PipedOutputStream ¿ÀºêÁ§Æ®¿¡ µ¥ÀÌÅ͸¦ ±âÀÔÇÏ´Â thread´Â º°µéÀÔ´Ï´Ù. ´ÜÀÏÀÇ thread·ÎºÎÅÍ ÀÌ·¯ÇÑ 2 °³ÀÇ ¿ÀºêÁ§Æ®¸¦ »ç¿ëÇÏ´Â °ÍÀº ±× thread¸¦ µ¥µå ·Ï ½ÃŰ´Â À§ÇèÀÌ ÀÖ±â (À§ÇØ)¶§¹®¿¡, Ãßõ ÇÒ ¼ö ¾ø½À´Ï´Ù. ÆÄÀÌÇÁ·Î ¿¬°áµÈ ÀÔ·Â ½ºÆ®¸²Àº ÀÏÁ¤ÇÑ ¹üÀ§³»¿¡¼­ ¹öÆÛ¸¦ º¸°ü À¯ÁöÇØ, À̰Ϳ¡ ÀÇÇØ ±âÀÔÇØ ó¸®¿Í Àоîµé¿© 󸮴 ºÐ¸®µË´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 0
°ü·Ã Ç׸ñ:
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 ()
          ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ÀÔ·Â ½ºÆ®¸²À» ´Ý¾Æ ±× ½ºÆ®¸²¿¡ °ü·ÃÇÏ´Â ¸ðµç system resource¸¦ ÇØ¹æÇÕ´Ï´Ù.
 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
 

ÇʵåÀÇ »ó¼¼

PIPE_SIZE

protected static final int PIPE_SIZE
ÆÄÀÌÇÁÀÇ ¼øÈ¯ ÀÔ·Â ¹öÆÛÀÇ »çÀÌÁîÀÔ´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 1
°ü·Ã Ç׸ñ:
Á¤¼ö ÇʵåÄ¡

buffer

protected byte[] buffer
µé¾î ¿À´Â µ¥ÀÌÅ͸¦ µÎ´Â ¼øÈ¯ ¹öÆÛÀÔ´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 1

in

protected int in
µ¥ÀÌÅÍÀÇ ´ÙÀ½ÀÇ ¹ÙÀÌÆ®¸¦ ÆÄÀÌÇÁ·Î ¿¬°áµÈ Á¢¼Ó ³¡³­ Ãâ·Â ½ºÆ®¸²À¸·ÎºÎÅÍ ¹Þ¾ÒÀ» ¶§¿¡, ±× ´ÙÀ½ÀÇ ¹ÙÀÌÆ®¸¦ ÀúÀåÇÏ´Â ¼øÈ¯ ¹öÆÛÀÇ À妽º À§Ä¡ÀÔ´Ï´Ù. in<0 ´Â ¹öÆÛ°¡ ÇÏ´ÃÀÎ °ÍÀ» ³ªÅ¸³»,in==out ´Â ¹öÆÛ°¡ °¡µæÇØ ÀÖ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 1

out

protected int out
ÆÄÀÌÇÁ·Î ¿¬°áµÈ ÀÌ ÀÔ·Â ½ºÆ®¸²ÀÌ µ¥ÀÌÅÍÀÇ ´ÙÀ½ÀÇ ¹ÙÀÌÆ®¸¦ ÀоîµéÀÌ´Â ¼øÈ¯ ¹öÆÛÀÇ À妽º À§Ä¡ÀÔ´Ï´Ù.

µµÀÔµÈ ¹öÁ¯:
JDK1. 1
»ý¼ºÀÚÀÇ »ó¼¼

PipedInputStream

public PipedInputStream(PipedOutputStream  src)
                 throws IOException 
PipedInputStream ¸¦, ÆÄÀÌÇÁ·Î ¿¬°áµÈ Ãâ·Â ½ºÆ®¸² src ¿¡ Á¢¼ÓµÇµµ·Ï(µíÀÌ) ÀÛ¼ºÇÕ´Ï´Ù. src ¿¡ ±âÀÔÇØÁö´Â µ¥ÀÌÅÍ ¹ÙÀÌÆ®´Â ÀÌ ½ºÆ®¸²À¸·ÎºÎÅÍ ÀÇ ÀÔ·ÂÀ¸·Î¼­ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
src - Á¢¼ÓóÀÇ ½ºÆ®¸²
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

PipedInputStream

public PipedInputStream()
PipedInputStream ¸¦, ¾ÆÁ÷ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº »óÅ·ΠÀÛ¼ºÇÕ´Ï´Ù. À̰ÍÀ» »ç¿ëÇÏ·Á¸é ,PipedOutputStream ¿¡ Á¢¼ÓÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

°ü·Ã Ç׸ñ:
connect(java.io.PipedOutputStream) , PipedOutputStream.connect(java.io.PipedInputStream)
¸Þ¼ÒµåÀÇ »ó¼¼

connect

public void connect(PipedOutputStream  src)
             throws IOException 
ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ÀÔ·Â ½ºÆ®¸²À», ÆÄÀÌÇÁ¿¡ ÀÇÇÑ Ãâ·Â ½ºÆ®¸² src ¿¡ Á¢¼Ó½Ãŵ´Ï´Ù. ÀÌ ¿ÀºêÁ§Æ®°¡ ÆÄÀÌÇÁ¿¡ ÀÇÇÏ´Â °Í ¿ÜÀÇ Ãâ·Â ½ºÆ®¸²¿¡ ¹ú½á Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì´Â IOException °¡ ½½·Î¿ì µË´Ï´Ù.

src °¡ ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ¹ÌÁ¢¼ÓÀÇ Ãâ·Â ½ºÆ®¸²À¸·Î,snk °¡ ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ¹ÌÁ¢¼ÓÀÇ ÀÔ·Â ½ºÆ®¸²ÀÎ °æ¿ì, 2 °³ÀÇ ½ºÆ®¸²Àº ÀÌÇÏÀÇ È£ÃâÀÇ ¾îµò°¡¿¡ µû¶ó Á¢¼ÓµË´Ï´Ù.

snk.connect(src) 

¶Ç´Â

src.connect(snk) 

2 °³ÀÇ È£ÃâÀº °°Àº È¿°ú¸¦ °¡Áý´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
src - ÆÄÀÌÇÁ¿¡ ÀÇÇÑ Á¢¼ÓóÀÇ Ãâ·Â ½ºÆ®¸²
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

receive

protected void receive(int b)
                throws IOException 
µ¥ÀÌÅÍÀÇ ¹ÙÀÌÆ®¸¦ ¹Þ½À´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â À¯È¿ÇÑ ÀÔ·ÂÀÌ ¾ÆÁ÷ ¾ø´Â °æ¿ì´Â ºí·Ï ÇÕ´Ï´Ù.

ÆÄ¶ó¹ÌÅÍ:
b - ¹Þ´Â ¹ÙÀÌÆ®
¿¹¿Ü:
IOException - ÆÄÀÌÇÁ°¡ °íÀ峪 ÀÖ´Â °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 1

read

public int read()
         throws IOException 
ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ÀÔ·Â ½ºÆ®¸²À¸·ÎºÎÅÍ , ´ÙÀ½ÀÇ ¹ÙÀÌÆ®¸¦ ÀоîµéÀÔ´Ï´Ù. °ª¹ÙÀÌÆ®´Â 0 ~ 255 ±îÁöÀÇ ¹üÀ§¿¡¼­ int ·Î¼­ µ¹·ÁÁÖ¾îÁý´Ï´Ù. ½ºÆ®¸²ÀÇ ¸¶Áö¸·¿¡ À̸£·¯ ¹ÙÀÌÆ®°¡ ¾ø´Â °æ¿ì´Â °ª -1 ÀÌ µ¹·ÁÁÖ¾îÁý´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ÀÔ·Â µ¥ÀÌÅ͸¦ ÀоîµéÀÏ ¼ö ÀÖ°Ô µÇ´ÂÁö ½ºÆ®¸²ÀÇ ¸¶Áö¸·ÀÌ °ËÃâµÇ´ÂÁö ¶Ç´Â ¿¹¿Ü°¡ ½½·Î¿ì µÉ ¶§±îÁö ºí·Ï ÇÕ´Ï´Ù. thread°¡ µ¥ÀÌÅÍ ¹ÙÀÌÆ®¸¦ Á¢¼Ó ³¡³­ ÆÄÀÌÇÁ Ãâ·Â ½ºÆ®¸²¿¡ Á¦°øÇϰí ÀÖ¾úÁö¸¸, ±× thread°¡ ÀÌÁ¦ »ýÁ¸Çϰí ÀÖÁö ¾Ê´Â °æ¿ì´Â IOException °¡ ½½·Î¿ì µË´Ï´Ù.

Á¤ÀÇ:
Ŭ·¡½º InputStream ³»ÀÇ read
¹Ýȯ°ª:
µ¥ÀÌÅÍÀÇ ´ÙÀ½ÀÇ ¹ÙÀÌÆ®. ½ºÆ®¸²ÀÇ ¸¶Áö¸·¿¡ À̸£·¶À» °æ¿ì´Â -1
¿¹¿Ü:
IOException - ÆÄÀÌÇÁ°¡ °íÀ峪 ÀÖ´Â °æ¿ì

read

public int read(byte[] b,
                int off,
                int len)
         throws IOException 
ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ÀÔ·Â ½ºÆ®¸²ÀÇ len ¹ÙÀÌÆ®±îÁöÀÇ µ¥ÀÌÅ͸¦ ¹ÙÀÌÆ®ÀÇ ¹è¿­¿¡ ÀоîµéÀÔ´Ï´Ù. µ¥ÀÌÅÍ ½ºÆ®¸²ÀÇ ¸¶Áö¸·¿¡ À̸£·¶À» °æ¿ì´Â len ¹ÙÀÌÆ®º¸´Ù ÀûÀº µ¥ÀÌÅÍ ¹Û¿¡ ÀÐÈ÷Áö ¾Ê½À´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â Àû¾îµµ 1 ¹ÙÀÌÆ®¸¦ »ç¿ëÇÒ ¼ö ÀÖ°Ô µÉ ¶§±îÁö ºí·Ï ÇÕ´Ï´Ù. thread°¡ µ¥ÀÌÅÍ ¹ÙÀÌÆ®¸¦ Á¢¼Ó ³¡³­ ÆÄÀÌÇÁ Ãâ·Â ½ºÆ®¸²¿¡ Á¦°øÇϰí ÀÖ¾úÁö¸¸, ±× thread°¡ ÀÌÁ¦ »ýÁ¸Çϰí ÀÖÁö ¾Ê´Â °æ¿ì´Â IOException °¡ ½½·Î¿ì µË´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º InputStream ³»ÀÇ read
ÆÄ¶ó¹ÌÅÍ:
b - µ¥ÀÌÅÍÀÇ readóÀÇ ¹öÆÛ
off - µ¥ÀÌÅÍÀÇ °³½Ã ¿ÀÇÁ¼Â(offset)
len - ÀÐÈ÷´Â ÃÖ´ë ¹ÙÀÌÆ®¼ö
¹Ýȯ°ª:
¹öÆÛ¿¡ ÀÐÈù ¹ÙÀÌÆ®ÀÇ ÇÕ°è¼ö. ½ºÆ®¸²ÀÇ ¸¶Áö¸·¿¡ À̸£·¯ µ¥ÀÌÅͰ¡ ¾ø´Â °æ¿ì´Â -1
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
°ü·Ã Ç׸ñ:
InputStream.read()

available

public int available()
              throws IOException 
ºí·Ï ÇÏÁö ¾Ê°í ÀÌ ÀÔ·Â ½ºÆ®¸²À¸·ÎºÎÅÍ ÀоîµéÀÏ ¼ö ÀÖ´Â ¹ÙÀÌÆ®¼ö¸¦ µ¹·ÁÁÝ´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â »óÀ§ Ŭ·¡½ºÀÇ available ¸Þ¼Òµå¸¦ ¿À¹ö¶óÀ̵å(override) ÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º InputStream ³»ÀÇ available
¹Ýȯ°ª:
ºí·Ï ÇÏÁö ¾Ê°í ÀÔ·Â ½ºÆ®¸²À¸·ÎºÎÅÍ ÀоîµéÀÏ ¼ö°¡ ÀÖ´Â ¹ÙÀÌÆ®¼ö
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÁ¯:
JDK1. 0.2

close

public void close()
           throws IOException 
ÆÄÀÌÇÁ¿¡ ÀÇÇÑ ÀÔ·Â ½ºÆ®¸²À» ´Ý¾Æ ±× ½ºÆ®¸²¿¡ °ü·ÃÇÏ´Â ¸ðµç system resource¸¦ ÇØ¹æÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º InputStream ³»ÀÇ close
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

JavaTM 2
Platform
Std.  Ed.  v1. 4.0

¹ö±×ÀÇ º¸°í¿Í ±â´ÉÀÇ ¸®Äù½ºÆ®
ÀÌ¿ÜÀÇ API ·¹ÆÛ·±½º ¹× °³¹ßÀÚ¿ë ¹®¼­¿¡ ´ëÇØ¼­´Â Java 2 SDK SE °³¹ßÀÚ¿ë ¹®¼­¸¦ ÂüÁ¶ÇØ ÁÖ¼¼¿ä. °³¹ßÀÚÀü¿ëÀÇ »ó¼¼ÇÑ ÇØ¼³, °³³äÀÇ °³¿ä, ¿ë¾îÀÇ Á¤ÀÇ, ¹ö±×ÀÇ È¸ÇÇÃ¥, ¹× ÄÚµå ½Ç·Ê°¡ Æ÷ÇԵǾî ÀÖ½À´Ï´Ù.

Java, Java 2 D, ¹× JDBC ´Â ¹Ì±¹ ¹× ±× ¿ÜÀÇ ³ª¶ó¿¡ À־ÀÇ ¹Ì±¹ Sun Microsystems, Inc. ÀÇ »óÇ¥ ȤÀº µî·Ï»óÇ¥ÀÔ´Ï´Ù.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.