JavaTM 2 Platform
Standard Ed. 5.0

java.nio.channels
ÀÎÅÍÆäÀ̽º GatheringByteChannel

¸ðµç ½´ÆÛ ÀÎÅÍÆäÀ̽º:
Channel, Closeable, WritableByteChannel
¾Ë·ÁÁø ±¸Çö Ŭ·¡½º ¸ñ·Ï:
DatagramChannel, FileChannel, Pipe.SinkChannel, SocketChannel

public interface GatheringByteChannel
extends WritableByteChannel

¹öÆÛ ¼ø¼­·ÎºÎÅÍ ¹ÙÀÌÆ®¸¦ Ãâ·ÂÇÒ ¼ö Àִ ä³ÎÀÔ´Ï´Ù.

¡¸ÁýÁß¡¹Ãâ·Â Á¶ÀÛÀº 1ȸ ÀÇ È£Ãâ·Î ÁöÁ¤µÈ ¹öÆÛ ¼ø¼­ (º¹¼ö°¡´É)·ÎºÎÅÍ ´ÜÀÏÀÇ ¹ÙÀÌÆ® ¼ø¼­¸¦ Ãâ·ÂÇÕ´Ï´Ù. º¸Åë, ÁýÁß Ãâ·ÂÀº ƯÁ¤ÀÇ ³×Æ®¿öÅ© ÇÁ·ÎÅäÄÝÀ̳ª ÆÄÀÏ Çü½Ä (µ¥ÀÌÅ͸¦ 1°³ ÀÌ»óÀÇ °íÁ¤Àå Çì´õ¿Í °¡º¯ÀåÀÇ º»Ã¼·ÎºÎÅÍ µÇ´Â ¼¼±×¸ÕÆ®(segment)¿¡ Á¤¸®ÇÏ´Â ±â´ÉÀ» °¡Áö´Â °Í µî)À» ±¸ÇöÇÏ´Â °æ¿ì¿¡ µµ¿òÀÌ µË´Ï´Ù. ÀÌ°Í¿¡ À¯»çÇÑ ¡¸ºÐ»ê¡¹read Á¶ÀÛÀº, ScatteringByteChannel ÀÎÅÍÆäÀ̽º¿¡ Á¤Àǵǰí ÀÖ½À´Ï´Ù.

µµÀÔµÈ ¹öÀü :
1.4

¸Þ¼­µå °³¿ä
 long write (ByteBuffer [] srcs)
          ÀÌ Ã¤³ÎÀÇ ¹ÙÀÌÆ® ¼ø¼­°¡ ÁöÁ¤µÈ ¹öÆ۷κÎÅÍ ½á³À´Ï´Ù.
 long write (ByteBuffer [] srcs, int offset, int length)
          ÀÌ Ã¤³ÎÀÇ ¹ÙÀÌÆ® ¼ø¼­°¡ ÁöÁ¤µÈ ¹öÆÛÀÇ ¼­ºê ¼ø¼­·ÎºÎÅÍ ½á³À´Ï´Ù.
 
ÀÎÅÍÆäÀ̽º java.nio.channels. WritableByteChannel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
write
 
ÀÎÅÍÆäÀ̽º java.nio.channels. Channel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
close, isOpen
 

¸Þ¼­µåÀÇ »ó¼¼

write

long write(ByteBuffer [] srcs,
           int offset,
           int length)
           throws IOException 
ÀÌ Ã¤³ÎÀÇ ¹ÙÀÌÆ® ¼ø¼­°¡ ÁöÁ¤µÈ ¹öÆÛÀÇ ¼­ºê ¼ø¼­·ÎºÎÅÍ ½á³À´Ï´Ù.

ÀÌ Ã¤³Î¿¡ ÃÖ´ë r ¹ÙÀÌÆ®¸¦ Ãâ·ÂÇÏ·Á°í ÇÕ´Ï´Ù. r´Â ÀÌ ¸Þ¼­µåÀÇ È£Ãâ½Ã·Î ÁöÁ¤µÈ ¹öÆÛ ¹è¿­ÀÇ ÁöÁ¤µÈ ¼­ºê ¼ø¼­¿¡ Æ÷ÇԵǴ ÇÕ°è ¹ÙÀÌÆ®¼öÀÔ´Ï´Ù.

 srcs[offset]. remaining() + srcs[offset+1]. remaining() + ... + srcs[offset+length-1]. remaining()

±æÀÌ n (0 <= n <= r)ÀÇ ¹ÙÀÌÆ® ¼ø¼­°¡ Ãâ·ÂÇØÁø´Ù°í ÇÕ´Ï´Ù. ÀÌ ¼ø¼­ÀÇ ÃÖÃÊÀÇ srcs[offset]. remaining()¹ÙÀÌÆ®±îÁö°¡ ¹öÆÛ srcs[offset]¿¡ Ãâ·ÂÇØÁ® ´ÙÀ½ÀÇ srcs[offset+1]. remaining() ¹ÙÀÌÆ®°¡ ¹öÆÛ srcs[offset]·Î ºÎÅÍ ¹öÆÛ srcs[offset+1]¿¡ Ãâ·ÂÇØÁý´Ï´Ù. ÀÌ Ã³¸®´Â ¹ÙÀÌÆ® ¼ø¼­ ÀüºÎ°¡ Ãâ·ÂÇØÁú ¶§±îÁö ¹Ýº¹ÇØÁý´Ï´Ù. °¢ ¹öÆ۷κÎÅÍ ÃÖ´ëÇÑÀÇ ¹ÙÀÌÆ®°¡ Ãâ·ÂÇØÁö±â ¶§¹®¿¡ °»½ÅµÈ °³°³ÀÇ ¹öÆÛÀÇ ÃÖÁ¾ÀûÀÎ À§Ä¡´Â ÃÖÁ¾ °»½Å ¹öÆÛ¸¦ Á¦¿ÜÇØ, ÀÌ ¹öÆÛÀÇ ¸®¹ÔÆ®¿Í µ¿ÀÏÇØÁý´Ï´Ù.

ƯÈ÷ ÁöÁ¤ÀÌ ¾ø´Â ÇÑ, ¿ä±¸µÈ r ¹ÙÀÌÆ®°¡ ¸ðµÎ Ãâ·ÂÇØÁö¸é Ãâ·Â Á¶ÀÛÀº Á¾·áÇÕ´Ï´Ù. ä³ÎÀÇ Á¾·ù¿¡ µû¶ó¼­´Â ±× »óÅ¿¡ ÀÀÇØ, ÀϺÎÀÇ ¹ÙÀÌÆ® ¹Û¿¡ Ãâ·ÂÇØÁöÁö ¾ÊÀº °æ¿ì³ª, ÀüÇô write¸¦ ÇÏÁö ¾Ê´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¾î ºñºí·Ï ¸ðµåÀÇ ¼ÒÄÏ Ã¤³Î¿¡¼­´Â ¼ÒÄÏÀÇ Ãâ·Â ¹öÆÛ³»ÀÇ ¹ÙÀÌÆ®¼ö°¡ ÃÖ´ë Ãâ·Â ¹ÙÀÌÆ®¼ö°¡ µË´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ¾ðÁ¦¶óµµ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¸, ´Ù¸¥ thread°¡ ÀÌ Ã¤³Î¿¡ ´ëÇؼ­ Ãâ·ÂÁ¶ÀÛÀ» °³½ÃÇÏ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼­µåÀÇ È£ÃâÀº ÃÖÃÊÀÇ Á¶ÀÛÀÌ ³¡³¯ ¶§±îÁö ºí·Ï µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
srcs - ¹ÙÀÌÆ®ÀÇ Ãëµæó ¹öÆÛ
offset - ÃÖÃÊÀÇ ¹ÙÀÌÆ®ÀÇ Ãëµæó°¡ µÇ´Â ¹öÆÛ ¹è¿­³»ÀÇ ¿ÀÇÁ¼Â(offset). srcs.length ¾Æ·¡ÀÇ Á¦·Î ¶Ç´Â Á¤ÀÇ ¼ö
length - ¾×¼¼½º °¡´ÉÇÑ ÃÖ´ë ¹öÆÛ¼ö. srcs.length - offset ¾Æ·¡ÀÇ Á¦·Î ¶Ç´Â Á¤ÀÇ ¼ö
¹Ýȯ°ª:
Ãâ·ÂÇØÁö´Â ¹ÙÀÌÆ®¼ö. Á¦·ÎÀÇ °æ¿ìµµ ÀÖ´Ù
¿¹¿Ü:
IndexOutOfBoundsException - offset ÆĶó¹ÌÅÍ¿Í length ÆĶó¹ÌÅÍÀÇ ÀüÁ¦ Á¶°ÇÀÌ Ã¤¿öÁöÁö ¾ÊÀº °æ¿ì
NonWritableChannelException - ÀÌ Ã¤³ÎÀÌ Ãâ·Â°¡´ÉÇÏÁö ¾ÊÀº °æ¿ì
ClosedChannelException - ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException - Ãâ·ÂÁß¿¡ ´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException - Ãâ·ÂÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException - ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

write

long write(ByteBuffer [] srcs)
           throws IOException 
ÀÌ Ã¤³ÎÀÇ ¹ÙÀÌÆ® ¼ø¼­°¡ ÁöÁ¤µÈ ¹öÆ۷κÎÅÍ ½á³À´Ï´Ù.

ÀÌ ¸Þ¼­µå¸¦ c.write(srcs) Çü½Ä¿¡¼­ È£ÃâÇßÀ» °æ¿ì, ´ÙÀ½ÀÇ È£Ãâ°ú °°Àº °á°ú¸¦ ¾òÀ» ¼ö ÀÖ½À´Ï´Ù.

 c.write(srcs, 0, srcs.length);

ÆĶó¹ÌÅÍ:
srcs - ¹ÙÀÌÆ®ÀÇ Ãëµæó ¹öÆÛ
¹Ýȯ°ª:
Ãâ·ÂÇØÁö´Â ¹ÙÀÌÆ®¼ö. Á¦·ÎÀÇ °æ¿ìµµ ÀÖ´Ù
¿¹¿Ü:
NonWritableChannelException - ÀÌ Ã¤³ÎÀÌ Ãâ·Â°¡´ÉÇÏÁö ¾ÊÀº °æ¿ì
ClosedChannelException - ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException - Ãâ·ÂÁß¿¡ ´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException - Ãâ·ÂÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException - ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

JavaTM 2 Platform
Standard Ed. 5.0

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.