JavaTM 2 Platform
Standard Ed. 5.0

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

java.lang.Object 
  »óÀ§¸¦ È®Àå java.nio.channels.Selector 
      »óÀ§¸¦ È®Àå java.nio.channels.spi.AbstractSelector

public abstract class AbstractSelector
extends Selector

¼¿·ºÅÍÀÇ º£À̽º ±¸Çö Ŭ·¡½ºÀÔ´Ï´Ù.

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

 try { begin();
 // Perform blocking I/O operation here ... } finally { end();
 }

ÀÌ Å¬·¡½º´Â ¼¿·ºÅÍ°¡ »èÁ¦µÈ Å° ¼¼Æ®¸¦ °ü¸®ÇÏ´Â ¸Þ¼­µå³ª, ä³ÎÀÇ Å° ¼¼Æ®·ÎºÎÅÍ Å°¸¦ »èÁ¦ÇÏ´Â ¸Þ¼­µåµµ Á¤ÀÇÇÕ´Ï´Ù. ¶Ç, ½ÇÁ¦·Î ä³ÎÀ» µî·ÏÇÒ ¶§¿¡ ¼±Åà °¡´É ä³ÎÀÇ register ¸Þ¼­µå¿¡ ÀÇÇØ È£ÃâµÇ´Â register ¸Þ¼­µå¸¦ ¼±¾ðÇÕ´Ï´Ù.

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

»ý¼ºÀÚ °³¿ä
protected AbstractSelector (SelectorProvider  provider)
          ÀÌ Å¬·¡½ºÀÇ »õ·Î¿î ÀνºÅϽº¸¦ ÃʱâÈ­ÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
protected  void begin ()
          ¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ °³½Ã¸¦ ¸¶Å© ÇÕ´Ï´Ù.
protected  Set <SelectionKey > cancelledKeys ()
          ÀÌ ¼¿·ºÅÍ°¡ »èÁ¦µÈ Å° ¼¼Æ®¸¦ ÃëµæÇÕ´Ï´Ù.
 void close ()
          ÀÌ ¼¿·ºÅ͸¦ ´Ý½À´Ï´Ù.
protected  void deregister (AbstractSelectionKey  key)
          Ã¤³ÎÀÇ Å° ¼¼Æ®·ÎºÎÅÍ ÁöÁ¤µÈ Å°¸¦ »èÁ¦ÇÕ´Ï´Ù.
protected  void end ()
          ¹«±âÇÑÀ¸·Î ºí·Ï µÇ´Â ÀÔÃâ·Â Á¶ÀÛÀÇ Á¾·á¸¦ ¸¶Å© ÇÕ´Ï´Ù.
protected abstract  void implCloseSelector ()
          ÀÌ ¼¿·ºÅ͸¦ ´Ý½À´Ï´Ù.
 boolean isOpen ()
          ÀÌ ¼¿·ºÅÍ »óÅ°¡ ¿ÀÇÂÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.
 SelectorProvider provider ()
          ÀÌ Ã¤³ÎÀÇ ¼Ò½ºÇÁ·Î¹ÙÀÌ´õ¸¦ ¸®ÅÏÇÕ´Ï´Ù.
protected abstract  SelectionKey register (AbstractSelectableChannel  ch, int ops, Object  att)
          ÀÌ ¼¿·ºÅÍ·Î ÁöÁ¤µÈ ä³ÎÀ» µî·ÏÇÕ´Ï´Ù.
 
Ŭ·¡½º java.nio.channels. Selector ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
keys, open, select, select, selectedKeys, selectNow, wakeup
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

AbstractSelector

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

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

close

public final void close()
                 throws IOException 
ÀÌ ¼¿·ºÅ͸¦ ´Ý½À´Ï´Ù.

ÀÌ ¼¿·ºÅÍ°¡ ÀÌ¹Ì Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼­µå´Â Áï½Ã Á¾·áÇÕ´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ÀÌ ¼¿·ºÅ͸¦ Ŭ·Î¿ìÁî ´ë»óÀ¸·ÎÀÇÇØ ¸¶Å© ÇÑµÚ Å¬·Î¿ìÁî Á¶ÀÛÀ» ¿Ï·áÇϱâ À§Çؼ­ implCloseSelector ¸Þ¼­µå¸¦ È£ÃâÇÕ´Ï´Ù.

Á¤ÀÇ:
Ŭ·¡½º Selector ³»ÀÇ close
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

implCloseSelector

protected abstract void implCloseSelector()
                                   throws IOException 
ÀÌ ¼¿·ºÅ͸¦ ´Ý½À´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ¼¿·ºÅÍÀÇ Å¬·Î¿ìÁî 󸮸¦ ½ÇÁ¦·Î ½ÇÇàÇϱâ À§Çؼ­ close ¸Þ¼­µå¿¡ ÀÇÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ ¸Þ¼­µå´Â ¼¿·ºÅÍ°¡ ¾ÆÁ÷ Ŭ·Î¿ìÁî µÇÁö ¾Ê°í, ÇâÈÄ ºÒ·Á °¥ °¡´É¼ºÀÌ ¾ø´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µåÀÇ ±¸ÇöÀº ÀÌ ¼¿·ºÅÍ¿¡ ´ëÇÑ ¼±Åà Á¶ÀÛÀ¸·Î ºí·Ï µÇ°í ÀÖ´Â °Í ¿ÜÀÇ thread¸¦, wakeup ¸Þ¼­µå¸¦ È£ÃâÇßÀ» °æ¿ì¿Í °°ÀÌ Áï½Ã Á¾·áÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

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

isOpen

public final boolean isOpen()
Ŭ·¡½º Selector ±â¼ú:
ÀÌ ¼¿·ºÅÍ »óÅ°¡ ¿ÀÇÂÀÏÁö ¾î¶³Áö¸¦ ÆÇ´ÜÇÕ´Ï´Ù.

Á¤ÀÇ:
Ŭ·¡½º Selector ³»ÀÇ isOpen
¹Ýȯ°ª:
ÀÌ ¼¿·ºÅÍ°¡ ¿ÀÇÂÀÎ °æ¿ì¿¡ ÇÑÁ¤ÇØ true

provider

public final SelectorProvider  provider()
ÀÌ Ã¤³ÎÀÇ ¼Ò½ºÇÁ·Î¹ÙÀÌ´õ¸¦ ¸®ÅÏÇÕ´Ï´Ù.

Á¤ÀÇ:
Ŭ·¡½º Selector ³»ÀÇ provider
¹Ýȯ°ª:
ÀÌ Ã¤³ÎÀÇ ¼Ò½ºÇÁ·Î¹ÙÀÌ´õ

cancelledKeys

protected final Set <SelectionKey > cancelledKeys()
ÀÌ ¼¿·ºÅÍ°¡ »èÁ¦µÈ Å° ¼¼Æ®¸¦ ÃëµæÇÕ´Ï´Ù.

ÀÌ ¼¼Æ®´Â µ¿±âÈ­ µÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ »ç¿ë °¡´ÉÇÕ´Ï´Ù.

¹Ýȯ°ª:
»èÁ¦µÈ Å° ¼¼Æ®

register

protected abstract SelectionKey  register(AbstractSelectableChannel  ch,
                                         int ops,
                                         Object  att)
ÀÌ ¼¿·ºÅÍ·Î ÁöÁ¤µÈ ä³ÎÀ» µî·ÏÇÕ´Ï´Ù.

ÀÌ ¸Þ¼­µå´Â ÀÌ ¼¿·ºÅÍ¿¡ ½ÇÁ¦·Î ä³ÎÀ» µî·ÏÇϱâ À§Çؼ­ ä³ÎÀÇ register ¸Þ¼­µå¿¡ ÀÇÇØ È£ÃâÇÕ´Ï´Ù.

ÆĶó¹ÌÅÍ:
ch - µî·ÏµÇ´Â ä³Î
ops - À¯È¿ÇÑ Ãʱ⠴ë»ó ¼¼Æ®
att - »ý¼ºµÇ´Â Å°ÀÇ Ãʱâ ÷ºÎ
¹Ýȯ°ª:
ÀÌ ¼¿·ºÅÍ·Î ÁöÁ¤µÈ ä³ÎÀÌ µî·ÏµÇ¾î ÀÖ´Â °ÍÀ» ³ªÅ¸³»´Â »õ·Î¿î Å°

deregister

protected final void deregister(AbstractSelectionKey  key)
ä³ÎÀÇ Å° ¼¼Æ®·ÎºÎÅÍ ÁöÁ¤µÈ Å°¸¦ »èÁ¦ÇÕ´Ï´Ù.

¼¿·ºÅÍ´Â µî·Ï ÇØÁ¦Çϴ ä³Î ¸¶´Ù ÀÌ ¸Þ¼­µå¸¦ È£ÃâÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
key - »èÁ¦µÇ´Â ¼±Åà Ű

begin

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

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

ÀÌ ¸Þ¼­µå¸¦ È£ÃâÇϸé, ¼¿·ºÅÍ¿¡ ´ëÇÑ ÀÔÃâ·Â Á¶ÀÛÀ¸·Î ºí·Ï µÇ°í ÀÖ´Â threadÀÇ interrupt ¸Þ¼­µå°¡ ºÒ·Á °¬À» °æ¿ì¿¡ ¼¿·ºÅÍÀÇ wakeup ¸Þ¼­µå°¡ È£ÃâµË´Ï´Ù.


end

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

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


JavaTM 2 Platform
Standard Ed. 5.0

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