JavaTM 2
Platform
Std.  Ed.  v1. 4.0

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

java.lang.Object 
  |
  +--java.nio.channels.spi.AbstractInterruptibleChannel
¸ðµç ±¸Çö ÀÎÅÍÆäÀ̽º:
Channel , InterruptibleChannel
Á÷°èÀÇ ±âÁ¸ÀÇ ¼­ºê Ŭ·¡½º:
FileChannel , SelectableChannel

public abstract class AbstractInterruptibleChannel
extends Object
implements Channel , InterruptibleChannel

¼¼Ä¡±â °¡´É ä³ÎÀÇ º£À̽º ±¸Çö Ŭ·¡½ºÀÔ´Ï´Ù.

ÀÌ Å¬·¡½º´Â ä³ÎÀÇ ºñµ¿±â Ŭ·Î¿ìÁî¿Í ¼¼Ä¡±â¸¦ ±¸ÇöÇϴµ¥ ÇÊ¿äÇÑ Àú·¹º§ÀÇ ±â±¸¸¦ ĸ½¶È­ÇÕ´Ï´Ù. ±¸»ó ä³Î Ŭ·¡½º´Â ¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀ» È£ÃâÇϱâ Àü¿¡ begin ¸Þ¼Òµå, È£ÃâÇÑ µÚ¿¡ end ¸Þ¼Òµå¸¦ È£ÃâÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. Åë»ó ÀÌ·¯ÇÑ ¸Þ¼Òµå´Â end ¸Þ¼Òµå°¡ ¹Ýµå½Ã ºÒ·Á °¡µµ·Ï(µíÀÌ),try ºí·Ï³»¿¡¼­ »ç¿ëµË´Ï´Ù.

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

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

±¸»ó ä³Î Ŭ·¡½ºµµ,implCloseChannel ¸Þ¼Òµå¸¦ ±¸ÇöÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ä³Î¿¡ ´ëÇÑ ³×ÀÌÆ¼ºêÀÇ ÀÔÃâ·Â Á¶ÀÛÀÇ µµÁß¿¡ ´Ù¸¥ thread°¡ ºí·Ï µÇ°í ÀÖ´Â µ¿¾È¿¡ ÀÌ ¸Þ¼Òµå¸¦ È£ÃâÇϸé(ÀÚ), ÀÌ Á¶ÀÛÀº ¿¹¿Ü¸¦ ½½·Î¿ì ÇÒ±î Åë»óÀÇ ¹æ¹ýÀ¸·Î Áï½Ã Á¾·áÇÕ´Ï´Ù. thread ¼¼Ä¡±â°¡ ¹ß»ýÇßÀ» °æ¿ì³ª, ÀÌ thread°¡ ºí·Ï µÇ°í Àִ ä³ÎÀÌ ºñµ¿±â¿¡ Ŭ·Î¿ìÁî µÇ¾úÀ» °æ¿ì, ä³ÎÀÇ end ¸Þ¼Òµå´Â ÀûÀýÇÑ ¿¹¿Ü¸¦ ½½·Î¿ì ÇÕ´Ï´Ù.

ÀÌ Å¬·¡½º´Â 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 ¸Þ¼Òµå¸¦ È£ÃâÇÕ´Ï´Ù.

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

implCloseChannel

protected abstract void implCloseChannel()
                                  throws IOException 
ÀÌ Ã¤³ÎÀ» Ŭ·Î¿ìÁî ÇÕ´Ï´Ù.

ÀÌ ¸Þ¼Òµå´Â ½ÇÁ¦·Î ä³ÎÀ» Ŭ·Î¿ìÁî Çϱâ À§ÇÑ(ÇØ),close ¸Þ¼Òµå¿¡ ÀÇÇØ ºÒ·Á °©´Ï´Ù. ÀÌ ¸Þ¼Òµå´Â ä³ÎÀÌ ¾ÆÁ÷ Ŭ·Î¿ìÁî Çϰí ÀÖÁö ¾Ê°í ÇâÈÄ ºÒ·Á °¥ °¡´É¼ºÀÌ ¾ø´Â °æ¿ì¿¡°Ô¸¸ ºÒ·Á °©´Ï´Ù.

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

¿¹¿Ü:
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
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.