|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Object java.nio.channels.spi.AbstractInterruptibleChannel java.nio.channels.SelectableChannel java.nio.channels.spi.AbstractSelectableChannel java.nio.channels.DatagramChannel
public abstract class DatagramChannel
µ¥ÀÌÅÍ ±×·¥Çü ¼ÒÄÏÀÇ ¼±Åà °¡´ÉÇÑ Ã¤³ÎÀÔ´Ï´Ù.
µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº ³×Æ®¿öÅ© µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÇ ¿ÏÀüÇÑ Ãß»óÈ°¡ ¾Æ´Õ´Ï´Ù. ¼ÒÄÏ ¿É¼ÇÀÇ ¹ÙÀεå¿Í Á¶ÀÛÀº, socket
¸Þ¼µå È£Ãâ¿¡ ÀÇÇØ ÃëµæÇÑ °ü·Ã DatagramSocket
°´Ã¼¸¦ °³ÀÔ½ÃÄÑ ½Ç½ÃÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ÀÓÀÇÀÇ ±âÁ¸ µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÇ Ã¤³ÎÀ» ÀÛ¼ºÇϰųª µ¥ÀÌÅÍ ±×·¥ ä³Î¿¡ °ü·ÃÇÑ µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀ¸·Î DatagramSocketImpl
°´Ã¼¸¦ »ç¿ëÇϵµ·Ï ÁöÁ¤ÇÒ ¼ö ¾ø½À´Ï´Ù.
µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº ÀÌ Å¬·¡½ºÀÇ open
¸Þ¼µå¸¦ È£ÃâÇÏ´Â °Í¿¡ ÀÇÇØ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. »õ·Ó°Ô ÀÛ¼ºµÈ µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº ¿ÀÇÂÀÔ´Ï´Ù¸¸, Á¢¼ÓÀº È®¸³µÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù. send
¸Þ¼µå¿Í receive
¸Þ¼µå´Â µ¥ÀÌÅÍ ±×·¥ ä³ÎÀ» Á¢¼ÓÇÏÁö ¾Ê¾Æµµ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. ½ÃÅ¥·¯Æ¼ üũÀÇ ¿À¹öÇìµå¸¦ ȸÇÇÇÏ´Â ¸ñÀûÀ¸·Î connect
¸Þ¼µå¸¦ È£ÃâÇϸé, µ¥ÀÌÅÍ ±×·¥ ä³ÎÀÌ Á¢¼ÓµÇ¾î ¼Û¼ö½Å Á¶ÀÛ¸¶´Ù ½ÃÅ¥·¯Æ¼ üũ¸¦ ÇÏÁö ¾Ê°í ³¡³³´Ï´Ù. ¼ÒÄÏ ÁÖ¼Ò¸¦ ¹Þ¾ÆµéÀÌÁö ¾Ê´Â (µ¹·ÁÁÖÁö ¾Ê´Â´Ù) read
¸Þ¼µå¿Í write
¸Þ¼µå¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â µ¥ÀÌÅÍ ±×·¥ ä³ÎÀ» Á¢¼ÓÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.
ÇÑ ¹ø Á¢¼ÓµÈ µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº Á¢¼ÓÀÌ Àý´Ü µÉ±î Ŭ·Î¿ìÁî µÉ ¶§±îÁö Á¢¼ÓµÈ ä·Î ÀÖ½À´Ï´Ù. µ¥ÀÌÅÍ ±×·¥ ä³ÎÀÌ Á¢¼ÓµÇ°í ÀÖÀ»Áö ¾î¶³Áö´Â isConnected
¸Þ¼µå È£Ãâ¿¡ ÀÇÇØ ÆÇ´ÜÇÒ ¼ö ÀÖ½À´Ï´Ù.
µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº º¹¼öÀÇ º´Çà thread·Î ¾ÈÀüÇÏ°Ô »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº µ¿½Ã read ¹× write¸¦ Áö¿ø ÇÕ´Ï´Ù. ´Ù¸¸, read¸¦ ½Ç½ÃÇÏ´Â threadµµ write¸¦ ½Ç½ÃÇÏ´Â threadµµ ƯÁ¤ÀÇ ½ÃÁ¡¿¡¼´Â Ç×»ó 1°³ ÀÌÇÏÀÔ´Ï´Ù.
»ý¼ºÀÚ °³¿ä | |
---|---|
protected |
DatagramChannel (SelectorProvider provider)
ÀÌ Å¬·¡½ºÀÇ »õ·Î¿î ÀνºÅϽº¸¦ ÃʱâÈÇÕ´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
abstract DatagramChannel |
connect (SocketAddress remote)
ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀ» Á¢¼ÓÇÕ´Ï´Ù. |
abstract DatagramChannel |
disconnect ()
ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÇ Á¢¼ÓÀ» Àý´Ü ÇÕ´Ï´Ù. |
abstract boolean |
isConnected ()
ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´ÂÁö¸¦ ÆÇ´ÜÇÕ´Ï´Ù. |
static DatagramChannel |
open ()
µ¥ÀÌÅÍ ±×·¥ ä³ÎÀ» ¿ÀÇÂÇÕ´Ï´Ù. |
abstract int |
read (ByteBuffer dst)
ÀÌ Ã¤³Î·ÎºÎÅÍ µ¥ÀÌÅÍ ±×·¥À» ÀоîµéÀÔ´Ï´Ù. |
long |
read (ByteBuffer [] dsts)
ÀÌ Ã¤³Î·ÎºÎÅÍ µ¥ÀÌÅÍ ±×·¥À» ÀоîµéÀÔ´Ï´Ù. |
abstract long |
read (ByteBuffer [] dsts,
int offset,
int length)
ÀÌ Ã¤³Î·ÎºÎÅÍ µ¥ÀÌÅÍ ±×·¥À» ÀоîµéÀÔ´Ï´Ù. |
abstract SocketAddress |
receive (ByteBuffer dst)
ÀÌ Ã¤³Î·ÎºÎÅÍ µ¥ÀÌÅÍ ±×·¥À» ¼ö½ÅÇÕ´Ï´Ù. |
abstract int |
send (ByteBuffer src,
SocketAddress target)
ÀÌ Ã¤³Î·ÎºÎÅÍ µ¥ÀÌÅÍ ±×·¥À» ¼Û½ÅÇÕ´Ï´Ù. |
abstract DatagramSocket |
socket ()
ÀÌ Ã¤³Î¿¡ °ü·ÃÇÑ µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀ» ÃëµæÇÕ´Ï´Ù. |
int |
validOps ()
ÀÌ Ã¤³ÎÀÇ Áö¿ø µÇ°í ÀÖ´Â Á¶ÀÛÀ» ½Äº°ÇÏ´Â Á¶ÀÛ ¼¼Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
abstract int |
write (ByteBuffer src)
ÀÌ Ã¤³Î¿¡ µ¥ÀÌÅÍ ±×·¥À» Ãâ·ÂÇÕ´Ï´Ù. |
long |
write (ByteBuffer [] srcs)
ÀÌ Ã¤³Î¿¡ µ¥ÀÌÅÍ ±×·¥À» Ãâ·ÂÇÕ´Ï´Ù. |
abstract long |
write (ByteBuffer [] srcs,
int offset,
int length)
ÀÌ Ã¤³Î¿¡ µ¥ÀÌÅÍ ±×·¥À» Ãâ·ÂÇÕ´Ï´Ù. |
Ŭ·¡½º java.nio.channels.spi. AbstractSelectableChannel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
blockingLock,
configureBlocking,
implCloseChannel,
implCloseSelectableChannel,
implConfigureBlocking,
isBlocking,
isRegistered,
keyFor,
provider,
register |
Ŭ·¡½º java.nio.channels. SelectableChannel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
register |
Ŭ·¡½º java.nio.channels.spi. AbstractInterruptibleChannel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
begin,
close,
end,
isOpen |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
toString,
wait,
wait,
wait |
ÀÎÅÍÆäÀ̽º java.nio.channels. Channel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
close,
isOpen |
ÀÎÅÍÆäÀ̽º java.nio.channels. Channel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
close,
isOpen |
ÀÎÅÍÆäÀ̽º java.nio.channels. Channel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
close,
isOpen |
ÀÎÅÍÆäÀ̽º java.nio.channels. Channel ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
close,
isOpen |
»ý¼ºÀÚ »ó¼¼ |
---|
protected DatagramChannel(SelectorProvider provider)
¸Þ¼µåÀÇ »ó¼¼ |
---|
public static DatagramChannel open() throws IOException
»õ·Î¿î ä³ÎÀ» ÀÛ¼ºÇÏ·Á¸é,
½Ã½ºÅÛ ÀüüÀÇ µðÆúÆ®ÀÎ SelectorProvider
°´Ã¼ÀÇ openDatagramChannel
¸Þ¼µå¸¦ È£ÃâÇÕ´Ï´Ù. ä³ÎÀº Á¢¼ÓµÇÁö ¾Ê½À´Ï´Ù.
IOException
- ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic final int validOps()
µ¥ÀÌÅÍ ±×·¥ ä³ÎÀº read¿Í write¸¦ Áö¿ø
ÇϹǷΠÀÌ ¸Þ¼µå´Â (SelectionKey.OP_READ
| SelectionKey.OP_WRITE
)À» ¸®ÅÏÇÕ´Ï´Ù.
SelectableChannel
³»ÀÇ validOps
public abstract DatagramSocket socket()
¸®ÅϵÈ
°´Ã¼´Â DatagramSocket
Ŭ·¡½º¿¡¼ ¼±¾ðµÇ¾î ÀÖÁö ¾ÊÀº public ¸Þ¼µå´Â ¼±¾ðÇÏÁö ¾Ê½À´Ï´Ù.
public abstract boolean isConnected()
public abstract DatagramChannel connect(SocketAddress remote) throws IOException
ä³ÎÀÇ ¼ÒÄÏÀº ÁöÁ¤µÈ ¸®¸ðÆ® ¡¸ÇǾÁÖ¼Ò ¿Ü·Î´Â µ¥ÀÌÅÍ ±×·¥À» ±³È¯ÇÏÁö ¾Ê°Ô ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù. Á¢¼Ó ÈÄ, ÁöÁ¤µÈ ÁÖ¼Ò ÀÌ¿ÜÀÇ ÁÖ¼Ò¿Í µ¥ÀÌÅÍ ±×·¥ÀÌ °Å·¡µÉ °ÍÀº ¾ø½À´Ï´Ù. µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀº Á¢¼ÓÀ» ¸í½ÃÀûÀ¸·Î Àý´Ü ÇÏ´ÂÁö Ŭ·Î¿ìÁî ÇÒ ¶§±îÁö Á¢¼ÓµÈ ä·Î ÀÖ½À´Ï´Ù.
ÀÌ ¸Þ¼µå´Â DatagramSocket
Ŭ·¡½ºÀÇ java.net.DatagramSocket#connect connect} ¸Þ¼µå¿Í ¿ÏÀüÈ÷ °°Àº ½ÃÅ¥·¯Æ¼ üũ¸¦ ½Ç½ÃÇÕ´Ï´Ù. ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖ´Â °æ¿ì´Â checkAccept
¸Þ¼µå°¡ ÁöÁ¤µÈ ¸®¸ðÆ® ÁּҷκÎÅÍÀÇ µ¥ÀÌÅÍ ±×·¥ÀÇ ¼ö½ÅÀ» Çã°¡ÇØ, checkConnect
¸Þ¼µå°¡ ÁöÁ¤µÈ ¸®¸ðÆ® ÁÖ¼Ò¿¡ÀÇ µ¥ÀÌÅÍ ±×·¥ÀÇ ¼Û½ÅÀ» Çã°¡ÇÏ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ¾ðÁ¦¶óµµ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. È£Ãâ½Ã¿¡ ÁøÇàÁßÀÇ read Á¶ÀÛ ¶Ç´Â Ãâ·ÂÁ¶ÀÛ¿¡´Â ÀÏÀý ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.
remote
- ÀÌ Ã¤³ÎÀÇ Á¢¼Óó ¸®¸ðÆ® ÁÖ¼Ò
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- Á¢¼Ó Á¶ÀÛÀÇ ÁøÇàÁß¿¡
´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- Á¢¼Ó Á¶ÀÛÀÇ ÁøÇàÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖ¾î, ÁöÁ¤µÈ ¸®¸ðÆ® ÁÖ¼Ò¿¡ÀÇ ¾×¼¼½º°¡ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract DatagramChannel disconnect() throws IOException
ä³ÎÀÇ ¼ÒÄÏÀº ÀνºÅç µÇ°í ÀÖ´Â ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú·ÎºÎÅÍ Çã°¡µÇ¾úÀ» °æ¿ì¿¡ ÇÑÁ¤ÇØ, ¸ðµç ¸®¸ðÆ® ÁÖ¼Ò¿Í µ¥ÀÌÅÍ ±×·¥À» ±³È¯ÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ¾ðÁ¦¶óµµ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. È£Ãâ½Ã¿¡ ÁøÇàÁßÀÇ read Á¶ÀÛ ¶Ç´Â Ãâ·ÂÁ¶ÀÛ¿¡´Â ÀÏÀý ¿µÇâÀ» ¹ÌÄ¡Áö ¾Ê½À´Ï´Ù.
ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ¶Ç´Â ä³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼µå¸¦ È£ÃâÇصµ ¹«½¼ È¿°úµµ ¾ø½À´Ï´Ù.
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract SocketAddress receive(ByteBuffer dst) throws IOException
µ¥ÀÌÅÍ ±×·¥À» Áï½Ã »ç¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì (ÀÌ Ã¤³ÎÀÌ ºí·Ï ¸ðµå·Î µ¿ÀÛÇÏ°í ÀÖ¾î µ¥ÀÌÅÍ ±×·¥ 1°³¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â °æ¿ì)´Â µ¥ÀÌÅÍ ±×·¥ÀÌ ÁöÁ¤µÈ byte ¹öÆÛ¿¡ Ä«ÇÇµÈµÚ ¼Ò½º ÁÖ¼Ò°¡ ¸®Åϵ˴ϴ٠. ÀÌ Ã¤³ÎÀÌ ºñºí·Ï ¸ðµå·Î µ¿ÀÛÇÏ°í ÀÖ¾î µ¥ÀÌÅÍ ±×·¥À» °ð¹Ù·Î »ç¿ëÇÒ ¼ö ¾ø´Â °æ¿ì´Â Áï½Ã null°¡ ¸®Åϵ˴ϴ٠.
µ¥ÀÌÅÍ ±×·¥Àº º¸Åë
ÀÇ read
Á¶ÀÛÀÇ °æ¿ì¿Í °°°Ô, ÁöÁ¤µÈ byte ¹öÆÛÀÇ ÇöÀç À§Ä¡¿¡ Àü¼Û µË´Ï´Ù. ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¹ÙÀÌÆ®¼ö°¡ µ¥ÀÌÅÍ ±×·¥ÀÇ Æ÷ÇÔ¿¡ ÇÊ¿äÇÑ ¹ÙÀÌÆ®¼öº¸´Ù ÀûÀº °æ¿ì, ¿ÏÀüÈ÷ ÇØ°áµÇÁö ¾Ê¾Ò´ø µ¥ÀÌÅÍ ±×·¥Àº ÅëÁö¾øÀÌ ÆıâµË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â DatagramSocket
Ŭ·¡½ºÀÇ receive
¸Þ¼µå¿Í ¿ÏÀüÈ÷ °°Àº ½ÃÅ¥·¯Æ¼ üũ¸¦ ½Ç½ÃÇÕ´Ï´Ù. ¼ÒÄÏÀÌ Æ¯Á¤ÀÇ ¸®¸ðÆ® ÁÖ¼Ò¿¡ Á¢¼ÓµÇÁö ¾Ê°í, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ¼ö½ÅµÈ µ¥ÀÌÅÍ ±×·¥ ¸¶´Ù ¼Ò½ºÀÇ ÁÖ¼Ò¿Í Æ÷Æ® ¹øÈ£°¡ ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkAccept
¸Þ¼µå¿¡ ÀÇÇØ Çã°¡µÇ°í ÀÖ´ÂÁö¸¦ È®ÀÎÇÕ´Ï´Ù. ÀÌ ½ÃÅ¥·¯Æ¼ üũÀÇ ¿À¹öÇìµå¸¦ ȸÇÇÇÏ·Á¸é,
ÃÖÃÊ·Î connect
¸Þ¼µå¸¦ »ç¿ëÇØ ¼ÒÄÏÀ» Á¢¼ÓÇÕ´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ¾ðÁ¦¶óµµ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¸, ´Ù¸¥ thread°¡ ÀÌ Ã¤³Î¿¡ ´ëÇؼ Àбâ Á¶ÀÛÀ» °³½ÃÇÏ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼µåÀÇ È£ÃâÀº ÃÖÃÊÀÇ Á¶ÀÛÀÌ ³¡³¯ ¶§±îÁö ºí·Ï µË´Ï´Ù.
dst
- µ¥ÀÌÅÍ ±×·¥ÀÇ Àü¼Ûó ¹öÆÛ
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡
´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖ¾î, µ¥ÀÌÅÍ ±×·¥ÀÇ ¼Û½ÅÃøÀÌ µ¥ÀÌÅÍ ±×·¥ÀÇ ¼ö½ÅÀ» Çã°¡ÇÏ°í ÀÖÁö ¾Ê´Â °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract int send(ByteBuffer src, SocketAddress target) throws IOException
ä³ÎÀÇ µ¿ÀÛ ¸ðµå°¡ ºñºí·Ï ¸ðµå·Î ±âÁØÀÌ µÇ´Â Ãâ·Â ¹öÆÛÀÇ ¿ë·®ÀÌ ÃæºÐÇÏÁö ¾ÊÀº °æ¿ì³ª, µ¿ÀÛ ¸ðµå°¡ ºí·Ï ¸ðµå·Î ÃæºÐÇÑ ¿ë·®ÀÌ ÀÖ´Â °æ¿ì, ÁöÁ¤µÈ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¹ÙÀÌÆ®´Â ´ÜÀÏÀÇ µ¥ÀÌÅÍ ±×·¥À¸·Î¼ ÁöÁ¤µÈ Ÿ°Ù ÁÖ¼Ò¿¡ Àü¼Û µË´Ï´Ù.
µ¥ÀÌÅÍ ±×·¥Àº º¸Åë
ÀÇ write
Á¶ÀÛÀ» ½ÇÇàÇßÀ» °æ¿ì¿Í °°°Ô, byte ¹öÆ۷κÎÅÍ Àü¼Û µË´Ï´Ù.
ÀÌ ¸Þ¼µå´Â DatagramSocket
Ŭ·¡½ºÀÇ send
¸Þ¼µå¿Í ¿ÏÀüÈ÷ °°Àº ½ÃÅ¥·¯Æ¼ üũ¸¦ ½Ç½ÃÇÕ´Ï´Ù. ¼ÒÄÏÀÌ Æ¯Á¤ÀÇ ¸®¸ðÆ® ÁÖ¼Ò¿¡ Á¢¼ÓµÇÁö ¾Ê°í, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ¼Û½ÅµÈ µ¥ÀÌÅÍ ±×·¥ ¸¶´Ù ¼Ò½ºÀÇ ÁÖ¼Ò¿Í Æ÷Æ® ¹øÈ£°¡ ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå¿¡ ÀÇÇØ Çã°¡µÇ°í ÀÖ´ÂÁö¸¦ È®ÀÎÇÕ´Ï´Ù. ÀÌ ½ÃÅ¥·¯Æ¼ üũÀÇ ¿À¹öÇìµå¸¦ ȸÇÇÇÏ·Á¸é,
ÃÖÃÊ·Î connect
¸Þ¼µå¸¦ »ç¿ëÇØ ¼ÒÄÏÀ» Á¢¼ÓÇÕ´Ï´Ù.
ÀÌ ¸Þ¼µå´Â ¾ðÁ¦¶óµµ È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¸, ´Ù¸¥ thread°¡ ÀÌ Ã¤³Î¿¡ ´ëÇؼ Ãâ·ÂÁ¶ÀÛÀ» °³½ÃÇÏ°í ÀÖ´Â °æ¿ì, ÀÌ ¸Þ¼µåÀÇ È£ÃâÀº ÃÖÃÊÀÇ Á¶ÀÛÀÌ ³¡³¯ ¶§±îÁö ºí·Ï µË´Ï´Ù.
src
- ¼Û½ÅµÇ´Â µ¥ÀÌÅÍ ±×·¥À» Æ÷ÇÔÇÑ ¹öÆÛtarget
- µ¥ÀÌÅÍ ±×·¥ÀÇ ¼Û½ÅÁö ÁÖ¼Ò
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡
´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ ÀνºÅç µÇ°í ÀÖ¾î, ÁöÁ¤µÈ ÁÖ¼Ò¿¡ÀÇ µ¥ÀÌÅÍ ±×·¥ÀÇ ¼Û½ÅÀÌ Çã°¡µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract int read(ByteBuffer dst) throws IOException
ÀÌ ¸Þ¼µå´Â ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÒ ¼ö°¡ ÀÖ¾î ±× ¼ÒÄÏÀÇ ÇǾî·ÎºÎÅÍÀÇ µ¥ÀÌÅÍ ±×·¥¸¸À» ¹Þ¾ÆµéÀÔ´Ï´Ù. ÁöÁ¤µÈ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¹ÙÀÌÆ®¼öºÎÅÍ µ¥ÀÌÅÍ ±×·¥ÀÇ ¹ÙÀÌÆ®¼ö ÂÊÀÌ ¸¹Àº °æ¿ì, ¿ÏÀüÈ÷ ÇØ°áµÇÁö ¾Ê¾Ò´ø ¹ÙÀÌÆ®´Â ÅëÁö ¾ø°Ô ÆıâµË´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼µå´Â ReadableByteChannel
ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤´ë·Î µ¿ÀÛÇÕ´Ï´Ù.
ReadableByteChannel
³»ÀÇ read
dst
- ¹ÙÀÌÆ®ÀÇ Àü¼Ûó ¹öÆÛ
NotYetConnectedException
- ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡
´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract long read(ByteBuffer [] dsts, int offset, int length) throws IOException
ÀÌ ¸Þ¼µå´Â ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÒ ¼ö°¡ ÀÖ¾î ±× ¼ÒÄÏÀÇ ÇǾî·ÎºÎÅÍÀÇ µ¥ÀÌÅÍ ±×·¥¸¸À» ¹Þ¾ÆµéÀÔ´Ï´Ù. ÁöÁ¤µÈ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¹ÙÀÌÆ®¼öºÎÅÍ µ¥ÀÌÅÍ ±×·¥ÀÇ ¹ÙÀÌÆ®¼ö ÂÊÀÌ ¸¹Àº °æ¿ì, ¿ÏÀüÈ÷ ÇØ°áµÇÁö ¾Ê¾Ò´ø ¹ÙÀÌÆ®´Â ÅëÁö ¾ø°Ô ÆıâµË´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼µå´Â ScatteringByteChannel
ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤´ë·Î µ¿ÀÛÇÕ´Ï´Ù.
ScatteringByteChannel
³»ÀÇ read
dsts
- ¹ÙÀÌÆ®ÀÇ Àü¼Ûó ¹öÆÛoffset
- ÃÖÃÊÀÇ ¹ÙÀÌÆ®ÀÇ Àü¼Ûó°¡ µÇ´Â ¹öÆÛ ¹è¿³»ÀÇ ¿ÀÇÁ¼Â(offset). dsts.length ¾Æ·¡ÀÇ Á¦·Î ¶Ç´Â Á¤ÀÇ ¼ölength
- ¾×¼¼½º °¡´ÉÇÑ ÃÖ´ë ¹öÆÛ¼ö. dsts.length - offset ¾Æ·¡ÀÇ Á¦·Î ¶Ç´Â Á¤ÀÇ ¼ö
NotYetConnectedException
- ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡
´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic final long read(ByteBuffer [] dsts) throws IOException
ÀÌ ¸Þ¼µå´Â ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÒ ¼ö°¡ ÀÖ¾î ±× ¼ÒÄÏÀÇ ÇǾî·ÎºÎÅÍÀÇ µ¥ÀÌÅÍ ±×·¥¸¸À» ¹Þ¾ÆµéÀÔ´Ï´Ù. ÁöÁ¤µÈ ¹öÆÛ³»¿¡ ³²¾Æ ÀÖ´Â ¹ÙÀÌÆ®¼öºÎÅÍ µ¥ÀÌÅÍ ±×·¥ÀÇ ¹ÙÀÌÆ®¼ö ÂÊÀÌ ¸¹Àº °æ¿ì, ¿ÏÀüÈ÷ ÇØ°áµÇÁö ¾Ê¾Ò´ø ¹ÙÀÌÆ®´Â ÅëÁö ¾ø°Ô ÆıâµË´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì, ÀÌ ¸Þ¼µå´Â ScatteringByteChannel
ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤´ë·Î µ¿ÀÛÇÕ´Ï´Ù.
ScatteringByteChannel
³»ÀÇ read
dsts
- ¹ÙÀÌÆ®ÀÇ Àü¼Ûó ¹öÆÛ
NotYetConnectedException
- ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡
´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- read Á¶ÀÛÀÇ ÁøÇàÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract int write(ByteBuffer src) throws IOException
ÀÌ ¸Þ¼µå´Â ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÒ ¼ö°¡ ÀÖ¾î ±× ¼ÒÄÏÀÇ ÇǾ Á÷Á¢ µ¥ÀÌÅÍ ±×·¥À» ¼Û½ÅÇÕ´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì´Â WritableByteChannel
ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤´ë·Î µ¿ÀÛÇÕ´Ï´Ù.
WritableByteChannel
³»ÀÇ write
src
- ¹ÙÀÌÆ®ÀÇ Ãëµæó ¹öÆÛ
NotYetConnectedException
- ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- Ãâ·ÂÁß¿¡ ´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- Ãâ·ÂÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic abstract long write(ByteBuffer [] srcs, int offset, int length) throws IOException
ÀÌ ¸Þ¼µå´Â ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÒ ¼ö°¡ ÀÖ¾î ±× ¼ÒÄÏÀÇ ÇǾ Á÷Á¢ µ¥ÀÌÅÍ ±×·¥À» ¼Û½ÅÇÕ´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì´Â GatheringByteChannel
ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤´ë·Î µ¿ÀÛÇÕ´Ï´Ù.
GatheringByteChannel
³»ÀÇ write
srcs
- ¹ÙÀÌÆ®ÀÇ Ãëµæó ¹öÆÛoffset
- ÃÖÃÊÀÇ ¹ÙÀÌÆ®ÀÇ Ãëµæó°¡ µÇ´Â ¹öÆÛ ¹è¿³»ÀÇ ¿ÀÇÁ¼Â(offset). srcs.length ¾Æ·¡ÀÇ Á¦·Î ¶Ç´Â Á¤ÀÇ ¼ölength
- ¾×¼¼½º °¡´ÉÇÑ ÃÖ´ë ¹öÆÛ¼ö. srcs.length - offset ¾Æ·¡ÀÇ Á¦·Î ¶Ç´Â Á¤ÀÇ ¼ö
NotYetConnectedException
- ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- Ãâ·ÂÁß¿¡ ´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- Ãâ·ÂÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic final long write(ByteBuffer [] srcs) throws IOException
ÀÌ ¸Þ¼µå´Â ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â °æ¿ì¿¡ ÇÑÁ¤ÇØ È£ÃâÇÒ ¼ö°¡ ÀÖ¾î ±× ¼ÒÄÏÀÇ ÇǾ Á÷Á¢ µ¥ÀÌÅÍ ±×·¥À» ¼Û½ÅÇÕ´Ï´Ù. ±× ¿ÜÀÇ °æ¿ì´Â GatheringByteChannel
ÀÎÅÍÆäÀ̽ºÀÇ ÁöÁ¤´ë·Î µ¿ÀÛÇÕ´Ï´Ù.
GatheringByteChannel
³»ÀÇ write
srcs
- ¹ÙÀÌÆ®ÀÇ Ãëµæó ¹öÆÛ
NotYetConnectedException
- ÀÌ Ã¤³ÎÀÇ ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
ClosedChannelException
- ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî ÇÏ°í ÀÖ´Â °æ¿ì
AsynchronousCloseException
- Ãâ·ÂÁß¿¡ ´Ù¸¥ thread¿¡ ÀÇÇØ ÀÌ Ã¤³ÎÀÌ Å¬·Î¿ìÁî µÇ¾úÀ» °æ¿ì
ClosedByInterruptException
- Ãâ·ÂÁß¿¡ ´Ù¸¥ thread·ÎºÎÅÍÀÇ ÀÎÅÍ·´Æ®°¡ ÀÖ¾ú±â ¶§¹®¿¡ ä³ÎÀÌ Å¬·Î¿ìÁî ÇØ, ÇöÀçÀÇ threadÀÇ ÀÎÅÍ·´Æ® »óÅ°¡ ¼³Á¤µÇ¾úÀ» °æ¿ì
IOException
- ±× ¿ÜÀÇ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy µµ ÂüÁ¶ÇϽʽÿÀ.