JavaTM 2 Platform
Standard Ed. 5.0

java.nio.channels.spi
Ŭ·¡½º AbstractInterruptibleChannel

java.lang.Object 
  »óÀ§¸¦ È®Àå java.nio.channels.spi.AbstractInterruptibleChannel
¸ðµç ±¸ÇöµÈ ÀÎÅÍÆäÀ̽º:
Closeable, Channel, InterruptibleChannel
¾Ë·ÁÁø Á÷°è ¼­ºê Ŭ·¡½º:
FileChannel, SelectableChannel

public abstract class AbstractInterruptibleChannel
extends Object
implements Channel, InterruptibleChannel

ÀÎÅÍ·´Æ® °¡´É ä³ÎÀÇ º£À̽º ±¸Çö Ŭ·¡½ºÀÔ´Ï´Ù.

ÀÌ Å¬·¡½º´Â ä³ÎÀÇ ºñµ¿±â Ŭ·Î¿ìÁî¿Í ºñµ¿±â ÀÎÅÍ·´Æ®¸¦ ±¸ÇöÇϴµ¥ ÇÊ¿äÇÑ Àú·¹º§ÀÇ µµ±¸¸¦ ĸ½¶È­ÇÏ°í ÀÖ½À´Ï´Ù. ±¸»ó ä³Î Ŭ·¡½º´Â ¹«±âÇÑÀ¸·Î ºí·Ï µÉ °¡´É¼ºÀÌ ÀÖ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ È£ÃâÀü¿¡ begin ¸Þ¼­µå¸¦, È£Ãâ ÈÄ¿¡ end ¸Þ¼­µå¸¦ °¢°¢ È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. µ¡ºÙ¿©end ¸Þ¼­µå°¡ ¹Ýµå½Ã È£ÃâµÇµµ·Ï Çϱâ À§ÇÑ, ÀÌ 2°³ÀÇ ¸Þ¼­µå¸¦ try ... finally ºí·Ï³»¿¡¼­ »ç¿ëÇϵµ·ÏÀÇÇØ ÁÖ¼¼¿ä.

 boolean completed = false;
 try { begin();
 completed = ...;
    // Perform blocking I/O operation return ...;
         // Return result } finally { end(completed);
 }

end ¸Þ¼­µåÀÇ completed Àμö´Â ÀÔÃâ·Â Á¶ÀÛÀÌ ½ÇÁ¦·Î ¿Ï·áÇß´ÂÁö ¾î¶°Çß´ÂÁö, Áï, È£Ãâ¿øÀ¸·Î ¹«¾ùÀΰ¡ÀÇ º¯È­¸¦ ÀνÄÇÒ ¼ö ÀÖÀ»Áö ¾î¶³Áö¸¦ ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î ¹ÙÀÌÆ®¸¦ Àо´Â Á¶ÀÛÀÇ °æ¿ì, È£Ãâ¿øÀÇ Å¸°Ù ¹öÆÛ¿¡ ½ÇÁ¦·Î ¹ÙÀÌÆ®°¡ Àü¼Û µÇ¾úÀ» °æ¿ì¿¡ ÇÑÁ¤ÇØ, ÀÌ Àμö°¡ true°¡ µË´Ï´Ù.

±¸»ó ä³Î Ŭ·¡½º´Â implCloseChannel ¸Þ¼­µåµµ ±¸ÇöÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì, ä³Î¿¡ ´ëÇÑ ³×ÀÌƼºêÀÇ ÀÔÃâ·Â Á¶ÀÛÀÇ µµÁß¿¡ ºí·Ï µÇ°í ÀÖ´Â thread°¡ ÀÖÀ» ¶§ ÀÌ ¸Þ¼­µå°¡ ºÒ·Á°¡ ¸é, ¿¹¿Ü¸¦ Throw ÇÒ±î º¸Åë ÀÇ ¹æ¹ýÀ¸·Î Áï½Ã Á¾·áÇϵµ·Ï ±¸ÇöÇÕ´Ï´Ù. thread¿¡ ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇßÀ» °æ¿ì³ª, thread¸¦ ºí·Ï ÇÏ°í Àִ ä³ÎÀÌ ºñµ¿±â¿¡ Ŭ·Î¿ìÁî µÇ¾úÀ» °æ¿ì, ä³ÎÀÇ end ¸Þ¼­µå´Â ÇØ´çÇÏ´Â ¿¹¿Ü¸¦ Throw ÇÕ´Ï´Ù.

ÀÌ Å¬·¡½º´Â Channel »ç¾çÀ» ±¸ÇöÇϴµ¥ ÇÊ¿äÇÑ µ¿±â 󸮸¦ ½Ç½ÃÇÕ´Ï´Ù. implCloseChannel ¸Þ¼­µåÀÇ ±¸Çö¿¡¼­´Â ä³ÎÀ» Ŭ·Î¿ìÁî ÇÏ·Á°í ÇÏ´Â °Í ¿ÜÀÇ thread¿¡ ´ëÇؼ­ µ¿±â 󸮸¦ ÇÒ ÇÊ¿ä´Â ¾ø½À´Ï´Ù.

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

»ý¼ºÀÚ °³¿ä
protected AbstractInterruptibleChannel ()
          ÀÌ Å¬·¡½ºÀÇ »õ·Î¿î ÀνºÅϽº¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
protected  void begin ()
          ¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ °³½Ã¸¦ ¸¶Å© ÇÕ´Ï´Ù.
 void close ()
          ÇöÀçÀÇ Ã¤³ÎÀ» ´Ý½À´Ï´Ù.
protected  void end (boolean completed)
          ¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ Á¾·á¸¦ ¸¶Å© ÇÕ´Ï´Ù.
protected abstract  void implCloseChannel ()
          ÇöÀçÀÇ Ã¤³ÎÀ» ´Ý½À´Ï´Ù.
 boolean isOpen ()
          ÇöÀçÀÇ Ã¤³Î »óÅ°¡ ¿ÀÇÂÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

AbstractInterruptibleChannel

protected AbstractInterruptibleChannel()
ÀÌ Å¬·¡½ºÀÇ »õ·Î¿î ÀνºÅϽº¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.

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

close

public final void close()
                 throws IOException 
ÇöÀçÀÇ Ã¤³ÎÀ» ´Ý½À´Ï´Ù.

ä³ÎÀÌ ÀÌ¹Ì Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼­µå´Â Áï½Ã Á¾·áÇÕ´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì´Â ä³ÎÀÇ Å¬·Î¿ìÁ ¸¶Å© ÇÏ°í ³ª¼­, Ŭ·Î¿ìÁî Á¶ÀÛÀ» ¿Ï·áÇϱâ À§Çؼ­ implCloseChannel ¸Þ¼­µå¸¦ È£ÃâÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Closeable ³»ÀÇ close
Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Channel ³»ÀÇ close
Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º InterruptibleChannel ³»ÀÇ close
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

implCloseChannel

protected abstract void implCloseChannel()
                                  throws IOException 
ÇöÀçÀÇ Ã¤³ÎÀ» ´Ý½À´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ä³ÎÀ» Ŭ·Î¿ìÁî ÇÏ´Â ½ÇÁ¦ÀÇ Ã³¸®¸¦ ½ÇÇàÇϱâ À§Çؼ­ close ¸Þ¼­µå¿¡ ÀÇÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â ä³ÎÀÌ ¾ÆÁ÷ Ŭ·Î¿ìÁî ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì¿¡°Ô¸¸ ºÒ·Á°¡ 2ȸ ÀÌ»ó ºÒ·Á °¥ °ÍÀº ¾ø½À´Ï´Ù.

ÀÌ ¸Þ¼­µåÀÇ ±¸ÇöÀº ÀÌ Ã¤³Î¿¡ ´ëÇÑ ÀÔÃâ·Â Á¶ÀÛÀÇ µµÁß¿¡ ºí·Ï µÇ´Â ±× ¿ÜÀÇ thread¸¦, ¿¹¿Ü¸¦ Throw ÇÏ´ÂÁö, º¸Åë ÀÇ ¹æ¹ýÀ» »ç¿ëÇØ Áï½Ã Á¾·á½ÃÅ°°Ô µÇ¾î ÀÖ½À´Ï´Ù.

¿¹¿Ü:
IOException - ä³ÎÀÇ Å¬·Î¿ìÁîÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

isOpen

public final boolean isOpen()
ÀÎÅÍÆäÀ̽º Channel ±â¼ú:
ÇöÀçÀÇ Ã¤³Î »óÅ°¡ ¿ÀÇÂÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.

Á¤ÀÇ:
ÀÎÅÍÆäÀ̽º Channel ³»ÀÇ isOpen
¹Ýȯ°ª:
ÇöÀçÀÇ Ã¤³ÎÀÌ ¿ÀÇÂÀÎ °æ¿ì¿¡ ÇÑÁ¤ÇØ true

begin

protected final void begin()
¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ °³½Ã¸¦ ¸¶Å© ÇÕ´Ï´Ù.

ÀÌ ¼¿·ºÅÍÀÇ ÀÎÅÍ·´Æ®¸¦ ±¸ÇöÇÏ·Á¸é, »ó±â¿¡ ³ªÅ¸³½ try ... finally ºí·ÏÀ» »ç¿ëÇØ, ÀÌ ¸Þ¼­µå¿Í end ¸Þ¼­µå¸¦ Æä¾î·Î È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.


end

protected final void end(boolean completed)
                  throws AsynchronousCloseException 
¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ Á¾·á¸¦ ¸¶Å© ÇÕ´Ï´Ù.

ÀÌ Ã¤³ÎÀÇ ºñµ¿±â Ŭ·Î¿ìÁî¿Í ºñµ¿±â ÀÎÅÍ·´Æ®¸¦ ±¸ÇöÇÏ°í´Â »ó±â¿¡ ³ªÅ¸³Â´ø ´ë·Îtry ... finally ºí·ÏÀ» »ç¿ëÇØ ÀÌ ¸Þ¼­µå¿Í begin ¸Þ¼­µå¸¦ Æä¾î·Î È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
completed - ÀÔÃâ·Â Á¶ÀÛÀÌ ¿Ã¹Ù¸£°Ô ¿Ï·áÇßÀ» °æ¿ì, Áï Á¶ÀÛÀÇ È£Ãâ Ãø¿¡ ¾î¶°ÇÑ º¯È­¸¦ º¼ ¼ö ÀÖ¾úÀ» °æ¿ì¿¡ ÇÑÁ¤ÇØ true
¿¹¿Ü:
AsynchronousCloseException - ä³ÎÀÌ ºñµ¿±â Ŭ·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException - ÀÔÃâ·Â Á¶ÀÛÁß¿¡ ºí·Ï µÈ thread¿¡ ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇßÀ» °æ¿ì

JavaTM 2 Platform
Standard Ed. 5.0

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