JavaTM 2 Platform
Standard Ed. 5.0

java.net
Ŭ·¡½º ServerSocket

java.lang.Object 
  »óÀ§¸¦ È®Àå java.net.ServerSocket
¾Ë·ÁÁø Á÷°è ¼­ºê Ŭ·¡½º:
SSLServerSocket

public class ServerSocket
extends Object

¼­¹ö ¼ÒÄÏÀ» ±¸ÇöÇϴ Ŭ·¡½ºÀÔ´Ï´Ù. ¼­¹ö ¼ÒÄÏÀº ³×Æ®¿öÅ©¸¦ °³ÀÔ½ÃÄÑ ¿ä±¸°¡ º¸³»Á® ¿À´Â °ÍÀ» ±â´Ù¸³´Ï´Ù. ±× ¿ä±¸¿¡ ±Ù°ÅÇØ Ã³¸®¸¦ ½Ç½ÃÇØ, °æ¿ì¿¡ µû¶ó¼­´Â ¿ä±¸ ¹ÙÅÁÀ¸·Î °á°ú¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¼­¹ö ¼ÒÄÏÀÇ ½ÇÁ¦ÀÇ Ã³¸®´Â SocketImpl Ŭ·¡½ºÀÇ ÀνºÅϽº¿¡ ÀÇÇØ ÇàÇØÁý´Ï´Ù. ¾îÇø®ÄÉÀ̼ǿ¡¼­´Â ¼ÒÄÏÀ» ÀÛ¼ºÇÏ´Â ¼ÒÄÏ ÆÑÅ丮¸¦ º¯°æÇØ, ·ÎÄà ¹æÈ­º®(fire wall)¿¡ ÀûÀýÇÑ ¼ÒÄÏÀ» ÀÛ¼ºÇϵµ·Ï ¾îÇø®ÄÉÀÌ¼Ç ÀÚ½ÅÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù .

µµÀÔµÈ ¹öÀü :
JDK1. 0
°ü·Ã Ç׸ñ:
SocketImpl, setSocketFactory(java.net.SocketImplFactory), ServerSocketChannel

»ý¼ºÀÚ °³¿ä
ServerSocket ()
          ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº ¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.
ServerSocket (int port)
          ÁöÁ¤µÈ Æ÷Æ®¿¡ ¹ÙÀÎµå µÈ ¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.
ServerSocket (int port, int backlog)
          ¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¹é ·Î±×·Î ÁöÁ¤µÈ ·ÎÄà Æ÷Æ® ¹øÈ£¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.
ServerSocket (int port, int backlog, InetAddress  bindAddr)
          ÁöÁ¤µÈ Æ÷Æ®, ´ë±âÇÏ´Â ¹é ·Î±× ¹× ·ÎÄà IP ÁÖ¼Ò¸¦ »ç¿ëÇØ, ¼­¹ö¸¦ ÀÛ¼ºÇÕ´Ï´Ù.
 
¸Þ¼­µå °³¿ä
 Socket accept ()
          ÀÌ ¼ÒÄÏ¿¡ ´ëÇÑ Á¢¼Ó ¿ä±¸¸¦ ´ë±âÇØ, ±×°ÍÀ» ¹Þ½À´Ï´Ù.
 void bind (SocketAddress  endpoint)
          ServerSocket¸¦ ƯÁ¤ÀÇ ÁÖ¼Ò (IP ÁÖ¼Ò ¹× Æ÷Æ® ¹øÈ£)¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.
 void bind (SocketAddress  endpoint, int backlog)
          ServerSocket¸¦ ƯÁ¤ÀÇ ÁÖ¼Ò (IP ÁÖ¼Ò ¹× Æ÷Æ® ¹øÈ£)¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.
 void close ()
          ÀÌ ¼ÒÄÏÀ» ´Ý½À´Ï´Ù.
 ServerSocketChannel getChannel ()
          ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ °íÀ¯ ServerSocketChannel °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì).
 InetAddress getInetAddress ()
          ÀÌ ¼­¹ö ¼ÒÄÏÀÇ ·ÎÄà ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 int getLocalPort ()
          ÀÌ ¼ÒÄÏÀÌ Á¢¼ÓÀ» ´ë±âÁßÀÇ Æ÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 SocketAddress getLocalSocketAddress ()
          ÀÌ ¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù.
 int getReceiveBufferSize ()
          ÀÌ ServerSocket·Î »ç¿ëµÇ´Â SO_RCVBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù.
 boolean getReuseAddress ()
          SO_REUSEADDR°¡ À¯È¿ÇÑ°¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.
 int getSoTimeout ()
          SO_TIMEOUT ¼³Á¤À» ÃëµæÇÕ´Ï´Ù.
protected  void implAccept (Socket  s)
          ServerSocket ¼­ºê Ŭ·¡½º¿¡¼­´Â ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇØ ¼ÒÄÏÀÇ µ¶ÀÚÀûÀÎ ¼­ºê Ŭ·¡½º¸¦ µ¹·ÁÁÖµµ·Ï accept()¸¦ ¿À¹ö¶óÀ̵å(override) ÇÒ ¼ö ÀÖ½À´Ï´Ù.
 boolean isBound ()
          ServerSocket ¹ÙÀεù »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù.
 boolean isClosed ()
          ServerSocket°¡ ´ÝÀº »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù.
 void setPerformancePreferences (int connectionTime, int latency, int bandwidth)
          ÀÌ ServerSocket ÆÛÆ÷¸Õ½º ¼³Á¤À» ½Ç½ÃÇÕ´Ï´Ù.
 void setReceiveBufferSize (int size)
          ÀÌ ServerSocket·Î ºÎÅÍ ¹Þ¾ÆµéÀÎ ¼ÒÄÏ¿¡ ´ëÇؼ­ SO_RCVBUF ¿É¼ÇÀÇ µðÆúÆ®ÀÇ Ãßõġ¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 void setReuseAddress (boolean on)
          SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
static void setSocketFactory (SocketImplFactory  fac)
          ¾îÇø®ÄÉÀ̼ÇÀÇ ¼­¹ö ¼ÒÄÏ ±¸Çö ÆÑÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù.
 void setSoTimeout (int timeout)
          ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô (¹Ð¸® ¼¼ÄÁµå ´ÜÀ§)À» »ç¿ëÇØ SO_TIMEOUT¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.
 String toString ()
          ÀÌ ¼ÒÄÏÀÇ ±¸Çö ÁÖ¼Ò¿Í ±¸Çö Æ÷Æ®¸¦ String·Î ¼­ ¸®ÅÏÇÕ´Ï´Ù.
 
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼­µå
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

»ý¼ºÀÚ »ó¼¼

ServerSocket

public ServerSocket()
             throws IOException 
¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº ¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù.

¿¹¿Ü:
IOException - ¼ÒÄÏÀ» ¿­ ¶§ÀÇ ÀÔÃâ·Â ¿¡·¯

ServerSocket

public ServerSocket(int port)
             throws IOException 
ÁöÁ¤µÈ Æ÷Æ®¿¡ ¹ÙÀÎµå µÈ ¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. Æ÷Æ® 0À» ÁöÁ¤Çϸé, ºñ¾î ÀÖ´Â Æ÷Æ®»ó¿¡ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

¼ö½ÅÇÏ´Â Á¢¼Ó (Á¢¼Ó ¿ä±¸)ÀÇ Å¥ÀÇ ÃÖ´ëÀåÀº 50 À¸·Î ¼³Á¤µË´Ï´Ù. Å¥°¡ ¸Þ¿öÁö°í ÀÖÀ» ¶§ Á¢¼Ó ¿ä±¸°¡ ÀÖÀ¸¸é, Á¢¼ÓÀº °ÅºÎµË´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼­¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤ÇÏ°í ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼­µå°¡ ºÒ·Á°¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ Àμö·Î¼­ port¸¦ ÁöÁ¤ÇØ ºÒ·Á°¡ ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
port - Æ÷Æ® ¹øÈ£. ºñ¾î ÀÖ´Â Æ÷Æ®¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â 0
¿¹¿Ü:
IOException - ¼ÒÄÏÀ» ¿­°í ÀÖÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
SocketImpl, SocketImplFactory.createSocketImpl(), setSocketFactory(java.net.SocketImplFactory), SecurityManager.checkListen(int)

ServerSocket

public ServerSocket(int port,
                    int backlog)
             throws IOException 
¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¹é ·Î±×·Î ÁöÁ¤µÈ ·ÎÄà Æ÷Æ® ¹øÈ£¿¡ ¹ÙÀεå ÇÕ´Ï´Ù. Æ÷Æ® ¹øÈ£¿¡ 0À» ÁöÁ¤Çϸé, ºñ¾î ÀÖ´Â Æ÷Æ®»ó¿¡ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

¼ö½ÅÇÏ´Â Á¢¼Ó (Á¢¼Ó ¿ä±¸)ÀÇ Å¥ÀÇ ÃÖ´ëÀåÀº, backlog ÆĶó¹ÌÅÍÀÇ °ªÀ¸·Î ¼³Á¤µË´Ï´Ù. Å¥°¡ ¸Þ¿öÁö°í ÀÖÀ» ¶§ Á¢¼Ó ¿ä±¸°¡ ÀÖÀ¸¸é, Á¢¼ÓÀº °ÅºÎµË´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼­¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤ÇÏ°í ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼­µå°¡ ºÒ·Á°¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ Àμö·Î¼­ port¸¦ ÁöÁ¤ÇØ ºÒ·Á°¡ ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

backlogÀμö´Â 0 º¸´Ù Å« Á¤ÀÇ °ªÀÌ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù. °Ç³×¹ÞÀº °ªÀÌ 0 ¾Æ·¡ÀÇ °æ¿ì´Â µðÆúÆ®ÀÇ °ªÀÌ »ç¿ëµË´Ï´Ù.

ÆĶó¹ÌÅÍ:
port - »ç¿ëÇÏ´Â Æ÷Æ®. ºñ¾î ÀÖ´Â Æ÷Æ®¸¦ »ç¿ëÇÏ´Â °æ¿ì´Â 0
backlog - Å¥ÀÇ ÃÖ´ëÀå
¿¹¿Ü:
IOException - ¼ÒÄÏÀ» ¿­°í ÀÖÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
SocketImpl, SocketImplFactory.createSocketImpl(), setSocketFactory(java.net.SocketImplFactory), SecurityManager.checkListen(int)

ServerSocket

public ServerSocket(int port,
                    int backlog,
                    InetAddress  bindAddr)
             throws IOException 
ÁöÁ¤µÈ Æ÷Æ®, ´ë±âÇÏ´Â ¹é ·Î±× ¹× ·ÎÄà IP ÁÖ¼Ò¸¦ »ç¿ëÇØ, ¼­¹ö¸¦ ÀÛ¼ºÇÕ´Ï´Ù. º¹¼ö ȨÀÇ È£½ºÆ®¿¡¼­´Â bindAddr Àμö¸¦ »ç¿ëÇØ, 1°³ÀÇ ÁÖ¼Ò¿¡ ´ëÇÑ Á¢¼Ó ¿ä±¸¸¸À» ¹Þ´Â ServerSocket¸¦ ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù . bindAddr¿¡ nullÀ» ÁöÁ¤Çϸé, ±âº»°ª¿¡ ÀÇÇØ ¸ðµç ·ÎÄà ÁÖ¼Ò¿¡ ´ëÇÑ Á¢¼ÓÀ» ¹Þ½À´Ï´Ù. Æ÷Æ® ¹øÈ£¿¡´Â 0 ¿¡¼­ 65535 ±îÁöÀÇ °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ Àμö·Î¼­ port¸¦ ÁöÁ¤ÇØ ºÒ·Á°¡ ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

backlogÀμö´Â 0 º¸´Ù Å« Á¤ÀÇ °ªÀÌ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù. °Ç³×¹ÞÀº °ªÀÌ 0 ¾Æ·¡ÀÇ °æ¿ì´Â µðÆúÆ®ÀÇ °ªÀÌ »ç¿ëµË´Ï´Ù.

ÆĶó¹ÌÅÍ:
port - ·ÎÄà TCP Æ÷Æ®
backlog - ´ë±âÇÏ´Â ¹é ·Î±×
bindAddr - ¼­¹ö¸¦ ¹ÙÀεå ÇÏ´Â ·ÎÄà InetAddress
¿¹¿Ü:
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
IOException - ¼ÒÄÏÀ» ¿­°í ÀÖÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÀü :
JDK1. 1
°ü·Ã Ç׸ñ:
SocketOptions, SocketImpl, SecurityManager.checkListen(int)
¸Þ¼­µåÀÇ »ó¼¼

bind

public void bind(SocketAddress  endpoint)
          throws IOException 
ServerSocket¸¦ ƯÁ¤ÀÇ ÁÖ¼Ò (IP ÁÖ¼Ò ¹× Æ÷Æ® ¹øÈ£)¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.

ÁÖ¼Ò°¡ nullÀÎ °æ¿ì´Â ½Ã½ºÅÛ¿¡ ÀÇÇØ ÀϽÃÀûÀÎ Æ÷Æ®¿Í À¯È¿ÇÑ ·ÎÄà ÁÖ¼Ò°¡ ¼±ÅÃµÇ¾î ¼ÒÄÏÀÌ ¹ÙÀÎµå µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
endpoint - ¹ÙÀεåóÀÇ IP ÁÖ¼Ò ¹× Æ÷Æ® ¹øÈ£
¿¹¿Ü:
IOException - ¹ÙÀεå Á¶ÀÛ¿¡ ½ÇÆÐÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ÀÌ¹Ì ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì
SecurityException - SecurityManager°¡ Á¸ÀçÇØ, ±× checkListen ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
IllegalArgumentException - ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î Áö¿ø µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼­ºê Ŭ·¡½ºÀÎ °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4

bind

public void bind(SocketAddress  endpoint,
                 int backlog)
          throws IOException 
ServerSocket¸¦ ƯÁ¤ÀÇ ÁÖ¼Ò (IP ÁÖ¼Ò ¹× Æ÷Æ® ¹øÈ£)¿¡ ¹ÙÀεå ÇÕ´Ï´Ù.

ÁÖ¼Ò°¡ nullÀÎ °æ¿ì´Â ½Ã½ºÅÛ¿¡ ÀÇÇØ ÀϽÃÀûÀÎ Æ÷Æ®¿Í À¯È¿ÇÑ ·ÎÄà ÁÖ¼Ò°¡ ¼±ÅÃµÇ¾î ¼ÒÄÏÀÌ ¹ÙÀÎµå µË´Ï´Ù.

backlogÀμö´Â 0 º¸´Ù Å« Á¤ÀÇ °ªÀÌ ¾Æ´Ï¸é ¾ÈµË´Ï´Ù. °Ç³×¹ÞÀº °ªÀÌ 0 ¾Æ·¡ÀÇ °æ¿ì´Â µðÆúÆ®ÀÇ °ªÀÌ »ç¿ëµË´Ï´Ù.

ÆĶó¹ÌÅÍ:
endpoint - ¹ÙÀεåóÀÇ IP ÁÖ¼Ò ¹× Æ÷Æ® ¹øÈ£
backlog - ´ë±âÇÏ´Â ¹é ·Î±×ÀÇ ±æÀÌ
¿¹¿Ü:
IOException - ¹ÙÀεå Á¶ÀÛ¿¡ ½ÇÆÐÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ÀÌ¹Ì ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì
SecurityException - SecurityManager°¡ Á¸ÀçÇØ, ±× checkListen ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
IllegalArgumentException - ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î Áö¿ø µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼­ºê Ŭ·¡½ºÀÎ °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4

getInetAddress

public InetAddress  getInetAddress()
ÀÌ ¼­¹ö ¼ÒÄÏÀÇ ·ÎÄà ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ÁÖ¼Ò. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null

getLocalPort

public int getLocalPort()
ÀÌ ¼ÒÄÏÀÌ Á¢¼ÓÀ» ´ë±âÁßÀÇ Æ÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÌ ´ë±âÇÏ´Â Æ÷Æ® ¹øÈ£. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â -1

getLocalSocketAddress

public SocketAddress  getLocalSocketAddress()
ÀÌ ¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù. ¼ÒÄÏÀÌ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â nullÀ» ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ ·ÎÄôÜÁ¡À» ³ªÅ¸³»´Â SocketAddress. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
getInetAddress(), getLocalPort(), bind(SocketAddress)

accept

public Socket  accept()
              throws IOException 
ÀÌ ¼ÒÄÏ¿¡ ´ëÇÑ Á¢¼Ó ¿ä±¸¸¦ ´ë±âÇØ, ±×°ÍÀ» ¹Þ½À´Ï´Ù. ¸Þ¼­µå´Â Á¢¼ÓÀÌ È®¸³µÉ ¶§±îÁö ºí·Ï µÇ°í ÀÖ½À´Ï´Ù.

»õ·Î¿î ¼ÒÄÏ s°¡ ÀÛ¼ºµÇ¾î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkAccept ¸Þ¼­µå°¡ Àμö·Î¼­ s.getInetAddress(). getHostAddress() ¹× s.getPort()¸¦ ÁöÁ¤ÇØ ºÒ·Á°¡ ÀÌ Á¶ÀÛÀÇ ½ÇÇàÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

¹Ýȯ°ª:
»õ·Î¿î ¼ÒÄÏ
¿¹¿Ü:
IOException - Á¢¼ÓÀÇ ´ë±âÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkListen ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
SocketTimeoutException - ÀÌÀü¿¡ setSoTimeout¸¦ »ç¿ëÇØ Å¸ÀÓ ¾Æ¿ôÀÌ ¼³Á¤µÇ¾î ±× ŸÀÓ ¾Æ¿ô¿¡ À̸£·¶À» °æ¿ì
IllegalBlockingModeException - ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀ̸ç, ¼ö¶ô Áغñ°¡ µÇ¾î ÀÖ´Â Á¢¼ÓÀÌ ¾ø´Â °æ¿ì
°ü·Ã Ç׸ñ:
SecurityManager.checkAccept(java.lang.String, int)

implAccept

protected final void implAccept(Socket  s)
                         throws IOException 
ServerSocket ¼­ºê Ŭ·¡½º¿¡¼­´Â ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇØ ¼ÒÄÏÀÇ µ¶ÀÚÀûÀÎ ¼­ºê Ŭ·¡½º¸¦ µ¹·ÁÁÖµµ·Ï accept()¸¦ ¿À¹ö¶óÀ̵å(override) ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ¶§¹®¿¡ FooServerSocket´Â ÀϹÝÀûÀ¸·Î ÀÌ ¸Þ¼­µå¿¡ ¡¸ºñ¾îÀִ¡¹FooSocket¸¦ °Ç³×ÁÝ´Ï´Ù. implAccept ·ÎºÎÅÍ µ¹¾Æ¿À¸é, FooSocket´Â Ŭ¶óÀ̾ðÆ®¿¡ Á¢¼ÓµË´Ï´Ù.

ÆĶó¹ÌÅÍ:
s - ¼ÒÄÏ
¿¹¿Ü:
IllegalBlockingModeException - ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IOException - Á¢¼ÓÀÇ ´ë±âÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÀü :
JDK1. 1

close

public void close()
           throws IOException 
ÀÌ ¼ÒÄÏÀ» ´Ý½À´Ï´Ù. ÇöÀç accept() ·Î ºí·Ï ¶°³¯ ¼ö ÀÖ¾î ¸ðµç thread´Â SocketException¸¦ Throw ÇÕ´Ï´Ù.

ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â ±× ä³Îµµ ´ÝÇôÁý´Ï´Ù.

¿¹¿Ü:
IOException - ¼ÒÄÏÀ» ´ÝÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì

getChannel

public ServerSocketChannel  getChannel()
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ °íÀ¯ ServerSocketChannel °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì).

ä³Î ÀÚü°¡ ServerSocketChannel.open ¸Þ¼­µå¸¦ »ç¿ëÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì¸¸, ¼­¹ö ¼ÒÄÏ¿¡ ä³ÎÀÌ Á¸ÀçÇÕ´Ï´Ù.

¹Ýȯ°ª:
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ¼­¹ö ¼ÒÄÏ Ã¤³Î. ÀÌ ¼ÒÄÏÀÌ Ã¤³Î¿ëÀ¸·Î ÀÛ¼ºµÇÁö ¾Ê¾Ò´ø °æ¿ì´Â null
µµÀÔµÈ ¹öÀü :
1.4

isBound

public boolean isBound()
ServerSocket ¹ÙÀεù »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
ServerSocket°¡ Á¤»óÀûÀ¸·Î ÁÖ¼Ò¿¡ ¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì´Â true
µµÀÔµÈ ¹öÀü :
1.4

isClosed

public boolean isClosed()
ServerSocket°¡ ´ÝÀº »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
¼ÒÄÏÀÌ ´Ý¾ÒÀ» °æ¿ì´Â true
µµÀÔµÈ ¹öÀü :
1.4

setSoTimeout

public void setSoTimeout(int timeout)
                  throws SocketException 
ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô (¹Ð¸® ¼¼ÄÁµå ´ÜÀ§)À» »ç¿ëÇØ SO_TIMEOUT¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀ¸·Î ŸÀÓ ¾Æ¿ôÀ» 0 ÀÌ¿ÜÀÇ °ªÀ¸·Î ¼³Á¤ÇØ ÀÌ ServerSocket accept()¸¦ È£ÃâÇϸé, ÁöÁ¤µÈ ½Ã°£¸¸ ºí·Ï µË´Ï´Ù. ŸÀÓ ¾Æ¿ôÀÌ Áö³ª¸é, ServerSocket´Â À¯È¿ÇÑ ±×´ë·Î·Î java.net.SocketTimeoutException°¡ ¹ß»ýÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀº ºí·Ï Á¶ÀÛ¿¡ µé¾î°¡±â Àü¿¡ À¯È¿ÇÏ°ÔÀÇÇØ µÑÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ŸÀÓ ¾Æ¿ô¿¡´Â 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÕ´Ï´Ù. ŸÀÓ ¾Æ¿ô¿¡ 0À» ÁöÁ¤Çϸé, ŸÀÓ ¾Æ¿ôÀº ¹«ÇÑÀ̶ó°í Çؼ®µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
timeout - ¹Ð¸® ¼¼ÄÁµå·Î ³ªÅ¸³»Áö´Â ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÀü :
JDK1. 1
°ü·Ã Ç׸ñ:
getSoTimeout()

getSoTimeout

public int getSoTimeout()
                 throws IOException 
SO_TIMEOUT ¼³Á¤À» ÃëµæÇÕ´Ï´Ù. ÀÌ ¿É¼ÇÀÌ ¹«È¿ (ŸÀÓ ¾Æ¿ôÀÌ ¹«ÇÑ)ÀÇ °æ¿ì´Â 0À» ¸®ÅÏÇÕ´Ï´Ù.

¹Ýȯ°ª:
SO_TIMEOUT Ä¡
¿¹¿Ü:
IOException - ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÀü :
JDK1. 1
°ü·Ã Ç׸ñ:
setSoTimeout(int)

setReuseAddress

public void setReuseAddress(boolean on)
                     throws SocketException 
SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù.

TCP Á¢¼ÓÀ» ´ÝÀ¸¸é, Á¢¼ÓÀÌ ´ÝÀºµÚ Á¢¼ÓÀÌ ÀÏÁ¤ÇÑ ½Ã°£ ŸÀÓ ¾Æ¿ô »óÅ´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù (º¸Åë, TIME_WAIT »óÅ ¶Ç´Â 2MSL ´ë±â »óÅ·ΠºÒ¸°´Ù). ÁÖÁöÀÇ ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Æ®¸¦ »ç¿ëÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀÇ °æ¿ì, ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Æ®¿¡ °ü·ÃµÈ Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡ ÀÖÀ¸¸é, ¼ÒÄÏÀ» ÇÊ¿äÇÑ SocketAddress¿¡ ¹ÙÀεå ÇÒ ¼ö ¾ø´Â °ÍÀÌ ÀÖ½À´Ï´Ù.

bind(SocketAddress)¸¦ »ç¿ëÇØ ¼ÒÄÏÀ» ¹ÙÀεå Çϱâ Àü¿¡ SO_REUSEADDR¸¦ À¯È¿ÇÏ°Ô Çϸé, ÀÌÀüÀÇ Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡¼­µµ ¼ÒÄÏÀ» ¹ÙÀεå ÇÒ ¼ö ÀÖ½À´Ï´Ù .

ServerSocket°¡ ÀÛ¼ºµÇ¸é, SO_REUSEADDR Ãʱ⼳Á¤Àº Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº getReuseAddress()¸¦ »ç¿ëÇØ SO_REUSEADDR Ãʱ⼳Á¤À» ÆÇÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù .

¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ¾ú´Ù (isBound()¸¦ ÂüÁ¶) ³ªÁß¿¡ SO_REUSEADDR¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÏ´Â °æ¿ìÀÇ µ¿ÀÛÀº Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
on - ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ÇÏ°Ô ÇÒ±î ¹«È¿·Î ÇÏ´ÂÁö¸¦ ÁöÁ¤
¿¹¿Ü:
SocketException - SO_RESUEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇÏ´Â °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ´Ý°í ÀÖ´Â °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
getReuseAddress(), bind(SocketAddress), isBound(), isClosed()

getReuseAddress

public boolean getReuseAddress()
                        throws SocketException 
SO_REUSEADDR°¡ À¯È¿ÇÑ°¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù.

¹Ýȯ°ª:
SO_REUSEADDR°¡ À¯È¿ÇÑ°¡ ¾î¶²°¡¸¦ ³ªÅ¸³»´Â boolean Ä¡
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
setReuseAddress(boolean)

toString

public String  toString()
ÀÌ ¼ÒÄÏÀÇ ±¸Çö ÁÖ¼Ò¿Í ±¸Çö Æ÷Æ®¸¦ String·Î ¼­ ¸®ÅÏÇÕ´Ï´Ù.

¿À¹ö¶óÀ̵å(override):
Ŭ·¡½º Object ³»ÀÇ toString
¹Ýȯ°ª:
ÀÌ ¼ÒÄÏÀÇ Ä³¸¯ÅÍ ¶óÀΠǥÇö

setSocketFactory

public static void setSocketFactory(SocketImplFactory  fac)
                             throws IOException 
¾îÇø®ÄÉÀ̼ÇÀÇ ¼­¹ö ¼ÒÄÏ ±¸Çö ÆÑÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù. ÆÑÅ丮¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ´Â °ÍÀº 1ȸ »ÓÀÔ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀ¸·Î »õ·Î¿î ¼­¹ö ¼ÒÄÏÀ» ÀÛ¼ºÇϸé, ¼ÒÄÏ ±¸Çö ÆÑÅ丮ÀÇ createSocketImpl ¸Þ¼­µå°¡ ºÒ·Á°¡ ½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.

ÆÑÅ丮°¡ ÀÌ¹Ì ¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº ÇÑ, ¸Þ¼­µå¿¡ nullÀ» °Ç³×Á־ ¾Æ¹«°Íµµ ÇàÇØÁöÁö ¾Ê½À´Ï´Ù.

½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼­µå´Â ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory ¸Þ¼­µå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.

ÆĶó¹ÌÅÍ:
fac - ¸ñÀûÀÇ ÆÑÅ丮
¿¹¿Ü:
IOException - ¼ÒÄÏ ÆÑÅ丮ÀÇ ¼³Á¤Áß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketException - ÆÑÅ丮°¡ ÀÌ¹Ì Á¤Àǵǰí ÀÖ´Â °æ¿ì
SecurityException - ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory ¸Þ¼­µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ì
°ü·Ã Ç׸ñ:
SocketImplFactory.createSocketImpl(), SecurityManager.checkSetFactory()

setReceiveBufferSize

public void setReceiveBufferSize(int size)
                          throws SocketException 
ÀÌ ServerSocket·Î ºÎÅÍ ¹Þ¾ÆµéÀÎ ¼ÒÄÏ¿¡ ´ëÇؼ­ SO_RCVBUF ¿É¼ÇÀÇ µðÆúÆ®ÀÇ Ãßõġ¸¦ ¼³Á¤ÇÕ´Ï´Ù. ¹Þ¾ÆµéÀÎ ¼ÒÄÏ¿¡ ½ÇÁ¦·Î ¼³Á¤µÈ °ªÀº, accept() ¿¡ ÀÇÇØ ¼ÒÄÏÀÌ ¸®ÅÏµÈ ÈÄ¿¡ Socket.getReceiveBufferSize()¸¦ È£ÃâÇØ ÆÇÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù.

SO_RCVBUF °ªÀº ³»ºÎ ¼ÒÄÏ ¼ö½Å ¹öÆÛÀÇ »çÀÌÁîÀÇ ¼³Á¤°ú ¸®¸ðÆ® ÇǾ ÅëÁöµÇ´Â TCP ¼ö½Å À©µµ¿ìÀÇ »çÀÌÁîÀÇ ¼³Á¤ÀÇ ¾çÂÊ ¸ðµÎ¿¡ »ç¿ëµË´Ï´Ù.

±× ÈÄ, Socket.setReceiveBufferSize(int)¸¦ È£ÃâÇØ ÀÌ °ªÀ» º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù . ´Ù¸¸, ¾îÇø®ÄÉÀ̼ÇÀ¸·Î 64K ¹ÙÀÌÆ®¸¦ ³Ñ´Â ¼ö½Å À©µµ¿ì¸¦ Çã°¡ÇÏ´Â °æ¿ì´Â RFC1323¿¡ Á¤Àǵǰí ÀÖµµ·Ï, ·ÎÄà ÁÖ¼Ò¿¡ ¹ÙÀεå ÇϱâÀü¿¡ Ãßõġ¸¦ ServerSocket ·Î ¼³Á¤ÇÒ ÇÊ¿ä°¡ ÀÖ½À´Ï´Ù. ÀÌ°ÍÀº Àμö ¾øÀ½ÀÇ »ý¼ºÀÚ¸¦ »ç¿ëÇØ ServerSocket¸¦ ÀÛ¼ºÇØ, ´ÙÀ½¿¡ setReceiveBufferSize()¸¦ È£ÃâÇØ, ¸¶Áö¸·¿¡ bind()¸¦ È£ÃâÇØ ServerSocket¸¦ ÁÖ¼Ò¿¡ ¹ÙÀεå ÇÒ ÇÊ¿ä°¡ ÀÖ´Â °ÍÀ»ÀǹÌÇÕ´Ï´Ù.

ÀÌ°Í¿¡ ½ÇÆÐÇصµ ¿¡·¯´Â ¹ß»ýÇÏÁö ¾Ê°í, ¹öÆÛ »çÀÌÁî´Â ¿ä±¸µÈ °ªÀ¸·Î ¼³Á¤µË´Ï´Ù. ´Ù¸¸, ÀÌ ServerSocket ·ÎºÎÅÍ ¹Þ´Â ¼ÒÄÏÀÇ TCP ¼ö½Å À©µµ¿ì´Â 64K ¹ÙÀÌÆ® ÀÌÇÏ°¡ µË´Ï´Ù.

ÆĶó¹ÌÅÍ:
size - ¼ö½Å ¹öÆÛ¿ëÀ¸·Î¼­ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ ÇÊ¿ä°¡ ÀÖ´Ù
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException - °ªÀÌ 0 ¶Ç´Â À߸øµÈ °ª ÀÎ °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
getReceiveBufferSize()

getReceiveBufferSize

public int getReceiveBufferSize()
                         throws SocketException 
ÀÌ ServerSocket·Î »ç¿ëµÇ´Â SO_RCVBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù. ÀÌ°ÍÀº ÀÌ ServerSocket·Î ºÎÅÍ ¹Þ´Â ¼ÒÄÏ¿¡ »ç¿ëµÇ´Â Ãßõ ¹öÆÛ »çÀÌÁîÀÔ´Ï´Ù.

¹Þ¾ÆµéÀÎ ¼ÒÄÏ¿¡ ½ÇÁ¦·Î ¼³Á¤µÈ °ªÀº Socket.getReceiveBufferSize()¸¦ È£ÃâÇØ ÆÇÁ¤ÇÏ´Â °Í¿¡ À¯ÀÇÇØ ÁÖ¼¼¿ä.

¹Ýȯ°ª:
ÀÌ Socket SO_RCVBUF ¿É¼ÇÀÇ °ª
¿¹¿Ü:
SocketException - ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
µµÀÔµÈ ¹öÀü :
1.4
°ü·Ã Ç׸ñ:
setReceiveBufferSize(int)

setPerformancePreferences

public void setPerformancePreferences(int connectionTime,
                                      int latency,
                                      int bandwidth)
ÀÌ ServerSocket ÆÛÆ÷¸Õ½º ¼³Á¤À» ½Ç½ÃÇÕ´Ï´Ù.

¼ÒÄÏÀº µðÆúÆ®·Î TCP/IP ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÕ´Ï´Ù. ±¸Çö¿¡ µû¶ó¼­´Â TCP/IP¿Í´Â ´Ù¸¥ ÆÛÆ÷¸Õ½º Ư¼ºÀ» °¡Áö´Â ´ëü ÇÁ·ÎÅäÄÝÀÌ Á¦°øµÇ´Â Àϵµ ÀÖ½À´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ¸Þ¼­µå¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î ±¸ÇöÀ¸·Î ÀÌ¿ë °¡´ÉÇÑ ÇÁ·ÎÅäÄÝÀÇ ¼±Åýÿ¡ ÀÌ·¯ÇÑ ±ÕÇüÀÇ ÃëÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³»´Â µ¶ÀÚÀûÀÎ ¼³Á¤À» Ç¥ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.

ÆÛÆ÷¸Õ½º ¼³Á¤Àº Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½, ÀÀ´ä ½Ã°£ÀÇ ¼Óµµ, ´ë¿ªÆøÀÇ ³ÐÀÌÀÇ »ó´ëÀûÀÎ Áß¿äµµ¸¦ ³ªÅ¸³»´Â 3°³ÀÇ Á¤¼ö°ª¿¡ ÀÇÇØ ±â¼úµË´Ï´Ù. Á¤¼öÀÇ Àý´ëÄ¡¿¡ °ü·Ã¼ºÀº ¾ø°í, ÇÁ·ÎÅäÄÝÀ» ¼±ÅÃÇϱâ À§Çؼ­ °ªÀ» ´ÜÁö ºñ±³ÇÕ´Ï´Ù. °ªÀÌ Å©¸éº¸´Ù °­ÇÑ ¼³Á¤À» ³ªÅ¸³À´Ï´Ù. ¿¹¸¦ µé¾î ¾îÇø®ÄÉÀ̼ÇÀÌ ÀÀ´ä ½Ã°£ÀÇ ¼Óµµ¿Í ´ë¿ªÆøÀÇ ³ÐÀ̺¸´Ù Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½À» ¿ì¼±ÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼­µå¸¦ (1, 0, 0) À̶ó°í ÇÏ´Â °ªÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù . ¾îÇø®ÄÉÀ̼ÇÀÌ ÀÀ´ä ½Ã°£ÀÇ ¼Óµµº¸´Ù ´ë¿ªÆøÀÇ ³ÐÀ̸¦, ¶Ç Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½º¸´Ù ÀÀ´ä ½Ã°£ÀÇ ¼Óµµ¸¦ ¿ì¼±ÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼­µå¸¦ (0, 1, 2) À̶ó°í ÇÏ´Â °ªÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù .

ÀÌ ¼ÒÄÏÀÌ ¹ÙÀÎµå µÈ µÚ¿¡ ÀÌ ¸Þ¼­µå¸¦ È£ÃâÇصµ, ¾Æ¹«°Íµµ ÇàÇØÁöÁö ¾Ê½À´Ï´Ù. ÀÌ°ÍÀº ÀÌ ±â´ÉÀ» »ç¿ëÇϱâ À§Çؼ­´Â Àμö°¡ ¾ø´Â »ý¼ºÀÚ¸¦ »ç¿ëÇØ ¼ÒÄÏÀ» ÀÛ¼ºÇÒ ÇÊ¿ä°¡ ÀÖ´Â °ÍÀ» ³ªÅ¸³À´Ï´Ù.

ÆĶó¹ÌÅÍ:
connectionTime - Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½ÀÇ »ó´ëÀûÀÎ Áß¿äµµ¸¦ ³ªÅ¸³»´Â int
latency - ÀÀ´ä ½Ã°£ÀÇ ¼ÓµµÀÇ »ó´ëÀûÀÎ Áß¿äµµ¸¦ ³ªÅ¸³»´Â int
bandwidth - ´ë¿ªÆøÀÇ ³ÐÀÌÀÇ »ó´ëÀûÀÎ Áß¿äµµ¸¦ ³ªÅ¸³»´Â int
µµÀÔµÈ ¹öÀü :
1.5

JavaTM 2 Platform
Standard Ed. 5.0

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