|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
ÀÌÀü Ŭ·¡½º ´ÙÀ½ Ŭ·¡½º | ÇÁ·¹ÀÓÀ¸·Î ÇÁ·¹ÀÓ ¾øÀÌ | |||||||||
°³¿ä: NESTED | Çʵå | constructor | ¸Þ¼µå | »ó¼¼: Çʵå | »ý¼ºÀÚ | ¸Þ¼µå |
java.lang.Objectjava.net.Socket
public class Socket
ÀÌ Å¬·¡½º´Â Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏ (´ÜÁö ¡¸¼ÒÄÏ¡¹À̶ó°íµµ ºÎ¸¥´Ù)À» ±¸ÇöÇÕ´Ï´Ù. ¼ÒÄϰú´Â 2°³ÀÇ ¸Ó½Å°£ÀÇ Åë½ÅÀÇ ¾ç´Ü¿¡ À§Ä¡ÇÏ´Â °ÍÀÔ´Ï´Ù.
¼ÒÄÏÀÇ ½ÇÁ¦ÀÇ Ã³¸®´Â SocketImpl
Ŭ·¡½ºÀÇ ÀνºÅϽº°¡ ½Ç½ÃÇÕ´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÏ´Â ¼ÒÄÏ ÆÑÅ丮¸¦ º¯°æÇÏ´Â °Í¿¡ÀÇÇØ ·ÎÄÃÀÇ ¹æÈº®(fire wall)¿¡ ÀûÀýÇÑ ¼ÒÄÏÀ» ÀÛ¼ºÇϵµ·Ï, ¾îÇø®ÄÉÀÌ¼Ç ÀÚ½ÅÀ» ±¸¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
setSocketImplFactory(java.net.SocketImplFactory)
,
SocketImpl
,
SocketChannel
»ý¼ºÀÚ °³¿ä | |
---|---|
|
Socket ()
½Ã½ºÅÛÀ¸·Î µðÆúÆ®°¡ µÇ¾î Àִ ŸÀÔÀÇ SocketImpl¸¦ »ç¿ëÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
Socket (InetAddress address,
int port)
½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ IP ÁÖ¼ÒÀÇ ÁöÁ¤µÈ Æ÷Æ® ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù. |
|
Socket (InetAddress host,
int port,
boolean stream)
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. UDP Àü¼ÛÀº ¾Æ´Ï°í DatagramSocket¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä. |
|
Socket (InetAddress address,
int port,
InetAddress localAddr,
int localPort)
¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¸®¸ðÆ® Æ÷Æ®»óÀÇ ÁöÁ¤µÈ ¸®¸ðÆ® ÁÖ¼Ò¿¡ Á¢¼ÓÇÕ´Ï´Ù. |
|
Socket (Proxy proxy)
(Á¸ÀçÇÏ´Â °æ¿ì´Â) ´Ù¸¥ ¼³Á¤¿¡ °ü°è¾øÀÌ »ç¿ëÇÏ´Â ÇÁ·Ï½ÃÀÇ Å¸ÀÔÀ» ÁöÁ¤ÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
protected |
Socket (SocketImpl impl)
»ç¿ëÀÚ°¡ ÁöÁ¤ÇÑ SocketImpl¸¦ »ç¿ëÇØ, Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº ¼ÒÄÏÀ» ÀÛ¼ºÇÕ´Ï´Ù. |
|
Socket (String host,
int port)
½ºÆ®¸² ¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ È£½ºÆ®»óÀÇ ÁöÁ¤µÈ Æ÷Æ® ¹øÈ£¿¡ Á¢¼ÓÇÕ´Ï´Ù. |
|
Socket (String host,
int port,
boolean stream)
ÃßõÇÏÁö ¾Ê½À´Ï´Ù. UDP Àü¼ÛÀº ¾Æ´Ï°í DatagramSocket¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä. |
|
Socket (String host,
int port,
InetAddress localAddr,
int localPort)
¼ÒÄÏÀ» ÀÛ¼ºÇØ, ÁöÁ¤µÈ ¸®¸ðÆ® Æ÷Æ®»óÀÇ ÁöÁ¤µÈ ¸®¸ðÆ® È£½ºÆ®¿¡°Ô Á¢¼ÓÇÕ´Ï´Ù. |
¸Þ¼µå °³¿ä | |
---|---|
void |
bind (SocketAddress bindpoint)
¼ÒÄÏÀ» ·ÎÄà ÁÖ¼Ò¿¡ ¹ÙÀεå ÇÕ´Ï´Ù. |
void |
close ()
ÀÌ ¼ÒÄÏÀ» ´Ý½À´Ï´Ù. |
void |
connect (SocketAddress endpoint)
ÀÌ ¼ÒÄÏÀ» ¼¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù. |
void |
connect (SocketAddress endpoint,
int timeout)
ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ôÄ¡¸¦ »ç¿ëÇØ ÀÌ ¼ÒÄÏÀ» ¼¹ö¿¡ Á¢¼ÓÇÕ´Ï´Ù. |
SocketChannel |
getChannel ()
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ °íÀ¯ SocketChannel °´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì). |
InetAddress |
getInetAddress ()
¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
InputStream |
getInputStream ()
ÀÌ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À» ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
getKeepAlive ()
SO_KEEPALIVE°¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù. |
InetAddress |
getLocalAddress ()
¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼Ò¸¦ ÃëµæÇÕ´Ï´Ù. |
int |
getLocalPort ()
ÀÌ ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
SocketAddress |
getLocalSocketAddress ()
ÀÌ ¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
getOOBInline ()
OOBINLINE°¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù. |
OutputStream |
getOutputStream ()
ÀÌ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²À» ¸®ÅÏÇÕ´Ï´Ù. |
int |
getPort ()
ÀÌ ¼ÒÄÏÀÇ Á¢¼ÓóÀÇ ¸®¸ðÆ® Æ÷Æ®¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
int |
getReceiveBufferSize ()
ÀÌ Socket·Î »ç¿ëµÇ´Â SO_RCVBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù. |
SocketAddress |
getRemoteSocketAddress ()
ÀÌ ¼ÒÄÏÀÌ Á¢¼ÓµÇ°í ÀÖ´Â ´Ü Á¡ÀÇ ÁÖ¼Ò¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
getReuseAddress ()
SO_REUSEADDR°¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù. |
int |
getSendBufferSize ()
ÀÌ Socket·Î »ç¿ëµÇ´Â SO_SNDBUF ¿É¼ÇÀÇ °ªÀ» ÃëµæÇÕ´Ï´Ù. |
int |
getSoLinger ()
SO_LINGER ¼³Á¤À» ¸®ÅÏÇÕ´Ï´Ù. |
int |
getSoTimeout ()
SO_TIMEOUT ¼³Á¤À» ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
getTcpNoDelay ()
TCP_NODELAY°¡ À¯È¿ÇѰ¡ ¾î¶²°¡¸¦ Á¶»çÇÕ´Ï´Ù. |
int |
getTrafficClass ()
ÀÌ ¼ÒÄÏÀ¸·ÎºÎÅÍ ¼Û½ÅµÇ´Â ÆÐŶÀÇ IP Çì´õÀÇ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½ºÇüÀ» ÃëµæÇÕ´Ï´Ù. |
boolean |
isBound ()
¼ÒÄÏÀÇ ¹ÙÀεù »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isClosed ()
¼ÒÄÏÀÌ ´ÝÀº »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isConnected ()
¼ÒÄÏÀÇ Á¢¼Ó »óŸ¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isInputShutdown ()
¼ÒÄÏ Á¢¼ÓÀÇ µ¶ÇØÃøÀÇ ¹ÝÀÌ ´Ý°í ÀÖ´ÂÁö¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
boolean |
isOutputShutdown ()
¼ÒÄÏ Á¢¼ÓÀÇ Ãâ·ÂÃøÀÇ ¹ÝÀÌ ´Ý°í ÀÖ´ÂÁö¸¦ ¸®ÅÏÇÕ´Ï´Ù. |
void |
sendUrgentData (int data)
¼ÒÄÏ»óÀÇ 1 ¹ÙÀÌÆ®ÀÇ ±ä±Þ µ¥ÀÌÅ͸¦ ¼Û½ÅÇÕ´Ï´Ù. |
void |
setKeepAlive (boolean on)
SO_KEEPALIVE¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setOOBInline (boolean on)
OOBINLINE (TCP ±ä±Þ µ¥ÀÌÅÍÀÇ ¼ö½Å)¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setPerformancePreferences (int connectionTime,
int latency,
int bandwidth)
ÀÌ ¼ÒÄÏÀÇ ÆÛÆ÷¸Õ½º ¼³Á¤À» ½Ç½ÃÇÕ´Ï´Ù. |
void |
setReceiveBufferSize (int size)
SO_RCVBUF ¿É¼ÇÀ» ÀÌ Socket·Î ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. |
void |
setReuseAddress (boolean on)
SO_REUSEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setSendBufferSize (int size)
SO_SNDBUF ¿É¼ÇÀ» ÀÌ Socket·Î ÁöÁ¤µÈ °ªÀ¸·Î ¼³Á¤ÇÕ´Ï´Ù. |
static void |
setSocketImplFactory (SocketImplFactory fac)
¾îÇø®ÄÉÀ̼ÇÀÇ Å¬¶óÀÌ¾ðÆ® ¼ÒÄÏ ±¸Çö ÆÑÅ丮¸¦ ¼³Á¤ÇÕ´Ï´Ù. |
void |
setSoLinger (boolean on,
int linger)
ÁöÁ¤µÈ Áö¿¬ ½Ã°£ (ÃÊ´ÜÀ§)À¸·Î SO_LINGER¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setSoTimeout (int timeout)
ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô (¹Ð¸® ¼¼ÄÁµå ´ÜÀ§)À» »ç¿ëÇØ, SO_TIMEOUT¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù. |
void |
setTcpNoDelay (boolean on)
TCP_NODELAY¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÕ´Ï´Ù (Nagle ¾Ë°í¸®ÁòÀÇ À¯È¿, ¹«È¿ÀÇ º¯È¯). |
void |
setTrafficClass (int tc)
ÀÌ Socket ·ÎºÎÅÍ ¼Û½ÅµÇ´Â ÆÐŶÀÇ IP Çì´õÀÇ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½ºÇü 8ÁßâÀ» ¼³Á¤ÇÕ´Ï´Ù. |
void |
shutdownInput ()
ÀÌ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²À» ¡¸½ºÆ®¸²ÀÇ ÃÖÈÄ¡¹¿¡ ¹èÄ¡ÇÕ´Ï´Ù. |
void |
shutdownOutput ()
ÀÌ ¼ÒÄÏÀÇ Ãâ·Â ½ºÆ®¸²À» ¹«È¿·Î ÇÕ´Ï´Ù. |
String |
toString ()
ÀÌ ¼ÒÄÏÀ» String ·Î
º¯È¯ÇÕ´Ï´Ù. |
Ŭ·¡½º java.lang. Object ·ÎºÎÅÍ »ó¼ÓµÈ ¸Þ¼µå |
---|
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
»ý¼ºÀÚ »ó¼¼ |
---|
public Socket()
public Socket(Proxy proxy)
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
ÀÌ
Àμö·Î¼ ÇÁ·Ï½Ã È£½ºÆ® ÁÖ¼Ò¿Í Æ÷Æ® ¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
·Ê:
Socket s = new Socket(Proxy.NO_PROXY);
¿¡
¼´Â ´Ù¸¥ ÇÁ·Ï½Ã ±¸¼ºÀ» ¹«½ÃÇØ, ÇÁ·¹ÀÎÀÎ ¼ÒÄÏÀÌ ÀÛ¼ºµÈ´ÙSocket s = new Socket(new Proxy(Proxy.Type.SOCKS, new InetSocketAddress("socks.mydom.com", 1080)));
¿¡
¼´Â ÁöÁ¤µÈ SOCKS ÇÁ·Ï½Ã ¼¹ö¸¦ °³ÀÔ½ÃÄÑ Á¢¼ÓÇÏ´Â ¼ÒÄÏÀÌ ÀÛ¼ºµÈ´Ù
proxy
- »ç¿ëÇÏ´Â ÇÁ·Ï½ÃÀÇ Á¾·ù¸¦ ÁöÁ¤ÇÏ´Â Proxy
°´Ã¼
IllegalArgumentException
- ÇÁ·Ï½ÃÀÇ ÇüŰ¡ ¹«È¿ ¶Ç´Â null
ÀÎ °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ÇÁ·Ï½Ã¿¡ÀÇ Á¢¼ÓÀÇ Á¢±Ù ±ÇÇÑÀÌ °ÅºÎµÇ¾úÀ» °æ¿ìProxySelector
,
Proxy
protected Socket(SocketImpl impl) throws SocketException
impl
- ¼ºê Ŭ·¡½º°¡ Socket »ó¿¡¼ »ç¿ëÇÏ´Â SocketImpl
ÀνºÅϽº
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic Socket(String host, int port) throws UnknownHostException, IOException
ÁöÁ¤µÈ È£½ºÆ®°¡ nullÀÎ °æ¿ì, À̰ÍÀº InetAddress.getByName
(null)·Î
¼ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÏ´Â °Í°ú °°½À´Ï´Ù. Áï, ·çÇÁ¹é ÀÎÅÍÆäÀ̽ºÀÇ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÏ´Â °ÍÀ¸·Î °°½À´Ï´Ù.
¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼µå°¡ ºÒ·Á°¡
½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
ÀÌ
Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
host
- È£½ºÆ®¸í. ·çÇÁ¹é ÁÖ¼ÒÀÇ °æ¿ì´Â null
port
- Æ÷Æ® ¹øÈ£
UnknownHostException
- È£½ºÆ®ÀÇ IP ÁÖ¼Ò¸¦ ÆÇÁ¤ÇÒ ¼ö ¾ø¾ú´ø °æ¿ì
IOException
- ¼ÒÄÏÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìsetSocketImplFactory(java.net.SocketImplFactory)
,
SocketImpl
,
SocketImplFactory.createSocketImpl()
,
SecurityManager.checkConnect(java.lang.String, int)
public Socket(InetAddress address, int port) throws IOException
¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼µå°¡ ºÒ·Á°¡
½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
ÀÌ
Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
address
- IP ÁÖ¼Òport
- Æ÷Æ® ¹øÈ£
IOException
- ¼ÒÄÏÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìsetSocketImplFactory(java.net.SocketImplFactory)
,
SocketImpl
,
SocketImplFactory.createSocketImpl()
,
SecurityManager.checkConnect(java.lang.String, int)
public Socket(String host, int port, InetAddress localAddr, int localPort) throws IOException
ÁöÁ¤µÈ È£½ºÆ®°¡ null ÀÎ °æ¿ì, À̰ÍÀº InetAddress.getByName
(null)·Î
¼ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÏ´Â °Í°ú °°½À´Ï´Ù. Áï, ·çÇÁ¹é ÀÎÅÍÆäÀ̽ºÀÇ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÏ´Â °ÍÀ¸·Î °°½À´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
ÀÌ
Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
host
- ¸®¸ðÆ® È£½ºÆ®¸í. ·çÇÁ¹é ÁÖ¼ÒÀÇ °æ¿ì´Â null
port
- ¸®¸ðÆ® Æ÷Æ®localAddr
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼ÒlocalPort
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Æ®
IOException
- ¼ÒÄÏÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkConnect(java.lang.String, int)
public Socket(InetAddress address, int port, InetAddress localAddr, int localPort) throws IOException
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
ÀÌ
Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
address
- ¸®¸ðÆ® ÁÖ¼Òport
- ¸®¸ðÆ® Æ÷Æ®localAddr
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà ÁÖ¼ÒlocalPort
- ¼ÒÄÏÀÇ ¹ÙÀεåóÀÇ ·ÎÄà Æ÷Æ®
IOException
- ¼ÒÄÏÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSecurityManager.checkConnect(java.lang.String, int)
@Deprecated public Socket(String host, int port, boolean stream) throws IOException
ÁöÁ¤µÈ È£½ºÆ®°¡ null ÀÎ °æ¿ì, À̰ÍÀº InetAddress.getByName
(null)·Î
¼ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÏ´Â °Í°ú °°½À´Ï´Ù. Áï, ·çÇÁ¹é ÀÎÅÍÆäÀ̽ºÀÇ ÁÖ¼Ò¸¦ ÁöÁ¤ÇÏ´Â °ÍÀ¸·Î °°½À´Ï´Ù.
stream Àμö¿¡ true
¸¦ ÁöÁ¤Çϸé, ½ºÆ®¸² ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. stream Àμö¿¡ false
¸¦ ÁöÁ¤Çϸé, µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼µå°¡ ºÒ·Á°¡
½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
ÀÌ
Àμö·Î¼ È£½ºÆ® ÁÖ¼Ò¿Í port
¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
UDP ¼ÒÄÏÀ» »ç¿ëÇÏ´Â °æ¿ì, TCP/IP¿¡ °ü·ÃµÈ ¼ÒÄÏ ¿É¼ÇÀº Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.
host
- È£½ºÆ®¸í. ·çÇÁ¹é ÁÖ¼ÒÀÇ °æ¿ì´Â null
port
- Æ÷Æ® ¹øÈ£stream
- ½ºÆ®¸² ¼ÒÄÏÀ̳ª µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÎÁö¸¦ ³ªÅ¸³»´Â boolean
Ä¡
IOException
- ¼ÒÄÏÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìsetSocketImplFactory(java.net.SocketImplFactory)
,
SocketImpl
,
SocketImplFactory.createSocketImpl()
,
SecurityManager.checkConnect(java.lang.String, int)
@Deprecated public Socket(InetAddress host, int port, boolean stream) throws IOException
stream Àμö¿¡ true
¸¦ ÁöÁ¤Çϸé, ½ºÆ®¸² ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. stream Àμö¿¡ false
¸¦ ÁöÁ¤Çϸé, µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¼¹ö ¼ÒÄÏ ÆÑÅ丮¸¦ ÁöÁ¤Çϰí ÀÖ´Â °æ¿ì´Â ±× ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼µå°¡ ºÒ·Á°¡
½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â ¡¸ÇÁ·¹ÀÎÀΡ¹¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ Àμö·Î¼ host.getHostAddress()
¿Í
port
¹øÈ£¸¦ ÁöÁ¤ÇØ È£ÃâÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
UDP ¼ÒÄÏÀ» »ç¿ëÇÏ´Â °æ¿ì, TCP/IP¿¡ °ü·ÃµÈ ¼ÒÄÏ ¿É¼ÇÀº Àû¿ëµÇÁö ¾Ê½À´Ï´Ù.
host
- IP ÁÖ¼Òport
- Æ÷Æ® ¹øÈ£stream
- true
¸¦ ÁöÁ¤ÇßÀ» °æ¿ì´Â ½ºÆ®¸² ¼ÒÄÏÀÌ ÀÛ¼ºµÇ¾î ±×·¸Áö ¾ÊÀº °æ¿ì´Â µ¥ÀÌÅÍ ±×·¥ ¼ÒÄÏÀÌ ÀÛ¼ºµÈ´Ù
IOException
- ¼ÒÄÏÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkConnect
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìsetSocketImplFactory(java.net.SocketImplFactory)
,
SocketImpl
,
SocketImplFactory.createSocketImpl()
,
SecurityManager.checkConnect(java.lang.String, int)
¸Þ¼µåÀÇ »ó¼¼ |
---|
public void connect(SocketAddress endpoint) throws IOException
endpoint
- SocketAddress
IOException
- Á¢¼Ó½Ã¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalBlockingModeException
- ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IllegalArgumentException
- ´Ü Á¡ÀÌ null ÀÎ °æ¿ì, ¶Ç´Â ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î Áö¿ø
µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìpublic void connect(SocketAddress endpoint, int timeout) throws IOException
endpoint
- SocketAddress
timeout
- »ç¿ëÇϴ ŸÀÓ ¾Æ¿ôÄ¡ (¹Ð¸® ¼¼ÄÁµå)
IOException
- Á¢¼Ó½Ã¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketTimeoutException
- Á¢¼ÓÇϱâ Àü¿¡ ŸÀÓ ¾Æ¿ôÀÌ Áö³µÀ» °æ¿ì
IllegalBlockingModeException
- ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇØ, ±× ä³ÎÀÌ ºñºí·ÎÅ· ¸ðµåÀÇ °æ¿ì
IllegalArgumentException
- ´Ü Á¡ÀÌ null ÀÎ °æ¿ì, ¶Ç´Â ´Ü Á¡ÀÌ ÀÌ ¼ÒÄÏÀ¸·Î Áö¿ø
µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìpublic void bind(SocketAddress bindpoint) throws IOException
ÁÖ¼Ò°¡ null
ÀÎ °æ¿ì´Â ½Ã½ºÅÛ¿¡ ÀÇÇØ ÀϽÃÀûÀÎ Æ÷Æ®¿Í À¯È¿ÇÑ ·ÎÄà ÁÖ¼Ò°¡ ¼±ÅÃµÇ¾î ¼ÒÄÏÀÌ ¹ÙÀÎµå µË´Ï´Ù.
bindpoint
- ¹ÙÀεåóÀÇ SocketAddress
IOException
- ¹ÙÀεå Á¶ÀÛ¿¡ ½ÇÆÐÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ À̹Ì
¹ÙÀÎµå µÇ°í ÀÖ´Â °æ¿ì
IllegalArgumentException
- bindpoint°¡ ÀÌ ¼ÒÄÏÀ¸·Î Áö¿ø
µÇ¾î ÀÖÁö ¾ÊÀº SocketAddress ¼ºê Ŭ·¡½ºÀÎ °æ¿ìisBound()
public InetAddress getInetAddress()
null
public InetAddress getLocalAddress()
InetAddress.anyLocalAddress()
public int getPort()
public int getLocalPort()
public SocketAddress getRemoteSocketAddress()
null
À»
¸®ÅÏÇÕ´Ï´Ù.
SocketAddress
. ¼ÒÄÏÀÌ ¾ÆÁ÷ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
getInetAddress()
,
getPort()
,
connect(SocketAddress, int)
,
connect(SocketAddress)
public SocketAddress getLocalSocketAddress()
null
À»
¸®ÅÏÇÕ´Ï´Ù.
SocketAddress
. ¼ÒÄÏÀÌ ¾ÆÁ÷ ¹ÙÀεåµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì´Â null
getLocalAddress()
,
getLocalPort()
,
bind(SocketAddress)
public SocketChannel getChannel()
SocketChannel
°´Ã¼¸¦ ¸®ÅÏÇÕ´Ï´Ù (Á¸ÀçÇÏ´Â °æ¿ì).
ä³Î ÀÚü°¡ SocketChannel.open
¸Þ¼µå ¶Ç´Â ServerSocketChannel.accept
¸Þ¼µå¸¦ »ç¿ëÇØ ÀÛ¼ºµÇ¾úÀ» °æ¿ì¿¡¸¸, ¼ÒÄÏ¿¡ ä³ÎÀÌ Á¸ÀçÇÕ´Ï´Ù.
public InputStream getInputStream() throws IOException
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â °á°úÀÇ ÀÔ·Â ½ºÆ®¸²Àº ±× Á¶ÀÛÀ» ¸ðµÎ ä³Î¿¡ À§¾ç ÇÕ´Ï´Ù. ±× ä³ÎÀÌ ºñºí·Ï ¸ðµåÀÇ °æ¿ì, ÀÔ·Â ½ºÆ®¸²ÀÇ read Á¶ÀÛÀ¸·Î IllegalBlockingModeException
À» ¹ß»ý½Ãŵ´Ï´Ù.
ÀÌ»óÇÑ »óȲ¿¡¼´Â ±âº»ÀÌ µÇ´Â Á¢¼ÓÀÌ ¸®¸ðÆ® È£½ºÆ® ¶Ç´Â ³×Æ®¿öÅ© ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÇØ Àý´Ü µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù (¿¹: TCP Á¢¼ÓÀÇ °æ¿ì, Á¢¼ÓÀÇ ¸®¼Â). ³×Æ®¿öÅ© ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÇØ Àý´Ü µÈ Á¢¼ÓÀÌ °ËÃâµÇ¾úÀ» °æ¿ì, ¸®ÅÏµÈ ÀÔ·Â ½ºÆ®¸²¿¡ ÀÌÇϰ¡ Àû¿ëµË´Ï´Ù.
³×Æ®¿öÅ© ¼ÒÇÁÆ®¿þ¾î´Â ¼ÒÄÏ¿¡ ÀÇÇØ ¹öÆÛ µÈ ¹ÙÀÌÆ®¸¦ ÆÄ±âÇÒ ¼ö°¡ ÀÖ´Ù. ³×Æ®¿öÅ© ¼ÒÇÁÆ®¿þ¾î¿¡ ÀÇÇØ ÆÄ±âµÇÁö ¾Ê´Â ¹ÙÀÌÆ®´Â read
¸¦
»ç¿ëÇØ Àо ¼ö°¡ ÀÖ´Ù
¼ÒÄÏ¿¡ ¹öÆÛ µÈ ¹ÙÀÌÆ®°¡ ¾ø´Â °æ¿ì, ¶Ç´Â ¸ðµç ¹öÆÛ µÈ ¹ÙÀÌÆ®°¡ read
¿¡ ÀÇÇØ ¼ÒºñµÇ¾úÀ» °æ¿ì, read
¿¡ÀÇ ±× ÈÄÀÇ È£ÃâÀº ¸ðµÎ, IOException
¸¦
Throw ÇÑ´Ù
¼ÒÄÏ¿¡ ¹öÆÛ µÈ ¹ÙÀÌÆ®°¡ ¾ø°í, close
¸¦
»ç¿ëÇØ ¼ÒÄÏÀÌ ´ÝÇôÁöÁö ¾ÊÀº °æ¿ì, available
´Â 0
À» µ¹·ÁÁØ´Ù
IOException
- ÀÔ·Â ½ºÆ®¸²ÀÇ ÀÛ¼º½Ã¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ¼ÒÄÏÀÌ ´ÝÇôÁö°í ÀÖ´Â °æ¿ì, ¼ÒÄÏÀÌ Á¢¼ÓµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ¶Ç´Â ¼ÒÄÏ ÀÔ·ÂÀÌ shutdownInput()
¸¦
»ç¿ëÇØ Á¤ÁöµÇ¾úÀ» °æ¿ìpublic OutputStream getOutputStream() throws IOException
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â °á°úÀÇ Ãâ·Â ½ºÆ®¸²Àº ±× Á¶ÀÛÀ» ¸ðµÎ ä³Î¿¡ À§¾ç ÇÕ´Ï´Ù. ä³ÎÀÌ ºñºí·Ï ¸ðµåÀÇ °æ¿ì, Ãâ·Â ½ºÆ®¸²ÀÇ write Á¶ÀÛÀ¸·Î IllegalBlockingModeException
À» ¹ß»ý½Ãŵ´Ï´Ù.
IOException
- Ãâ·Â ½ºÆ®¸²ÀÇ ÀÛ¼ºÁß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì, ȤÀº ¼ÒÄÏÀÌ Á¢¼ÓµÇÁö ¾Ê´Â °æ¿ìpublic void setTcpNoDelay(boolean on) throws SocketException
on
- TCP_NODELAY¸¦ À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true
, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetTcpNoDelay()
public boolean getTcpNoDelay() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetTcpNoDelay(boolean)
public void setSoLinger(boolean on, int linger) throws SocketException
on
- Áö¿¬ ½Ã°£À» À¯È¿ÇÏ°Ô ÇÒÁö ¾î¶³Áö¸¦ ÁöÁ¤linger
- on°¡ trueÀÎ °æ¿ì´Â Áö¿¬ ½Ã°£
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException
- Áö¿¬ ½Ã°£ÀÇ °ªÀÌ ºÎÀÇ ¼öÄ¡ÀÎ °æ¿ìgetSoLinger()
public int getSoLinger() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetSoLinger(boolean, int)
public void sendUrgentData(int data) throws IOException
data
- ¼Û½ÅÇÏ´Â µ¥ÀÌÅÍÀÇ ¹ÙÀÌÆ®
IOException
- µ¥ÀÌÅ͸¦ ¼Û½ÅÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìpublic void setOOBInline(boolean on) throws SocketException
¼ö½ÅÇÏ´Â ±ä±Þ µ¥ÀÌÅÍÀÇ Ã³¸®¿¡´Â ÇÑÁ¤ÇÑ Áö¿ø ¹Û¿¡ Á¦°øµÇÁö ¾Ê´Â °Í¿¡ ÁÖÀÇÇØ ÁÖ¼¼¿ä. ƯÈ÷, °íÀ§ ·¹º§ÀÇ ÇÁ·ÎÅäÄÝÀÌ Á¦°øµÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì, ¼ö½ÅÇÏ´Â ±ä±Þ µ¥ÀÌÅÍÀÇ ÅëÁö´Â Á¦°øµÇÁö ¾Ê°í, º¸Åë µ¥ÀÌÅÍ¿Í ±ä±Þ µ¥ÀÌÅ͸¦ ±¸º°ÇÏ´Â ±â´ÉÀº ¾ø½À´Ï´Ù.
on
- OOBINLINE¸¦ À¯È¿ÇÏ°Ô ÇÏ´Â °æ¿ì´Â true
, ¹«È¿·Î ÇÏ´Â °æ¿ì´Â false
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetOOBInline()
public boolean getOOBInline() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetOOBInline(boolean)
public void setSoTimeout(int timeout) throws SocketException
timeout
- ¹Ð¸® ¼¼ÄÁµå·Î ³ªÅ¸³»Áö´Â ÁöÁ¤µÈ ŸÀÓ ¾Æ¿ô
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetSoTimeout()
public int getSoTimeout() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetSoTimeout(int)
public void setSendBufferSize(int size) throws SocketException
SO_SNDBUF´Â ÈùÆ®À̹ǷΠ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¹öÆÛÀÇ »çÀÌÁî ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getSendBufferSize()
¸¦
È£ÃâÇØ ÁÖ¼¼¿ä.
size
- ¼Û½Å ¹öÆÛ¿ëÀ¸·Î¼ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
IllegalArgumentException
- °ªÀÌ 0 ¶Ç´Â À߸øµÈ °ª
ÀÎ °æ¿ìgetSendBufferSize()
public int getSendBufferSize() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetSendBufferSize(int)
public void setReceiveBufferSize(int size) throws SocketException
¼ö½Å ¹öÆÛÀÇ »çÀÌÁ ´Ã¸®¸é, ´ë±Ô¸ð Á¢¼Ó¿¡¼ÀÇ ³×Æ®¿öÅ© ÀÔÃâ·ÂÀÇ ÆÛÆ÷¸Õ½º¸¦ ¿Ã¸± ¼ö°¡ ÀÖ½À´Ï´Ù. ÇÑÆí, »çÀÌÁ ÁÙÀ̸é, ¼ö½Å µ¥ÀÌÅÍÀÇ ¹é ·Î±×¸¦ ÁÙÀÏ ¼ö°¡ ÀÖ½À´Ï´Ù.
SO_RCVBUF´Â ÈùÆ®À̹ǷΠ¾îÇø®ÄÉÀ̼ÇÀ¸·Î ¹öÆÛÀÇ »çÀÌÁî ¼³Á¤À» Á¶»çÇÒ Çʿ䰡 ÀÖ´Â °æ¿ì´Â getReceiveBufferSize()
¸¦
È£ÃâÇØ ÁÖ¼¼¿ä.
SO_RCVBUF °ªÀº ¸®¸ðÆ® ÇǾ ÅëÁöµÇ´Â TCP ¼ö½Å À©µµ¿ìÀÇ ¼³Á¤¿¡µµ »ç¿ëµË´Ï´Ù. ÀϹÝÀûÀ¸·Î À©µµ¿ì »çÀÌÁî´Â ¼ÒÄÏÀÇ Á¢¼Ó½Ã¿¡ ¾ðÁ¦¶óµµ º¯°æÇÒ ¼ö ÀÖ½À´Ï´Ù. ´Ù¸¸, 64K º¸´Ù Å« ¼ö½Å À©µµ¿ì°¡ ÇÊ¿äÇÑ °æ¿ì´Â ¼ÒÄÏÀ» ¸®¸ðÆ® ÇǾ Á¢¼ÓÇϱâÀüÀ¸·Î º¯°æÀ» ¿ä±¸ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ´ÙÀ½ÀÇ 2°³ÀÇ Á¡¿¡ À¯ÀÇÇØ ÁÖ¼¼¿ä.
ServerSocket.setReceiveBufferSize(int)
¸¦
È£ÃâÇØ À̰ÍÀ» ½ÇÇàÇÒ Çʿ䰡 ÀÖ´Ù
size
- ¼ö½Å ¹öÆÛ¿ëÀ¸·Î¼ ¼³Á¤ÇÏ´Â »çÀÌÁî. 0 º¸´Ù Å« °ªÀ» ÁöÁ¤ÇÒ Çʿ䰡 ÀÖ´Ù
IllegalArgumentException
- °ªÀÌ 0 ¶Ç´Â À߸øµÈ °ª
ÀÎ °æ¿ì
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetReceiveBufferSize()
,
ServerSocket.setReceiveBufferSize(int)
public int getReceiveBufferSize() throws SocketException
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetReceiveBufferSize(int)
public void setKeepAlive(boolean on) throws SocketException
on
- ¼ÒÄÏÀ» ¿Â´ë·ÎÀÇÇØ µÑÁö ¾î¶³Áö¸¦ ÁöÁ¤
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetKeepAlive()
public boolean getKeepAlive() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetKeepAlive(boolean)
public void setTrafficClass(int tc) throws SocketException
tc
¹üÀ§´Â 0 <= tc <= 255
°¡
¾Æ´Ï¸é ¾ÈµË´Ï´Ù. ±×·¸Áö ¾ÊÀº °æ¿ì´Â IllegalArgumentException ÀÌ ¹ß»ý µË´Ï´Ù.
ÁÖ:
IP (Internet Protocol) ¹öÀü 4ÀÎ °æ¿ì, RFC 1349 ·Î ¼³¸íµÇ°í ÀÖµµ·Ï, ÀÌ °ªÀº ¿ì¼± ¼øÀ§ÀÇ ³ôÀº 8Áßâ°ú TOS Çʵå·Î ±¸¼ºµË´Ï´Ù. TOS Çʵå´Â ´ÙÀ½°ú °°ÀÌ ºñÆ® ´ÜÀ§ÀÇ ³í¸®ÇÕ¿¡ ÀÇÇØ ÀÛ¼ºµÇ´Â ºñÆ® ¼¼Æ®ÀÔ´Ï´Ù.
IPTOS_LOWCOST (0x02)
IPTOS_RELIABILITY (0x04)
IPTOS_THROUGHPUT (0x08)
IPTOS_LOWDELAY (0x10)
¿ì¼± Çʵ忡 ºñÆ®¸¦ ¼³Á¤Çϸé, Á¶ÀÛÀÌ Çã°¡µÇÁö ¾Ê´Â °ÍÀ» ³ªÅ¸³»´Â SocketException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
IP (Internet Protocol) ¹öÀü
6ÀÎ °æ¿ì, tc
´Â IP Çì´õÀÇ sin6_flowinfo Çʵ忡 Æ÷ÇԵǴ °ªÀÔ´Ï´Ù.
tc
- ºñÆ® ¼¼Æ®ÀÇ int
°ª
SocketException
- Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½ºÇüÀ» ¼³Á¤ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìgetTrafficClass()
public int getTrafficClass() throws SocketException
¹èÈÄÀÇ ³×Æ®¿öÅ© ±¸ÇöÀÌ, setTrafficClass(int)
¸¦
»ç¿ëÇØ ¼³Á¤µÈ Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½ºÇüÀ» ¹«½ÃÇÏ´Â ÀÏÀÌ ÀÖÀ¸¹Ç·Î ÀÌ Socket ·Î setTrafficClass(int)
¸Þ¼µå¸¦ »ç¿ëÇØ ÀÌÀüÀ¸·Î ¼³Á¤µÈ °ª°ú´Â ´Ù¸¥ °ªÀÌ ÀÌ ¸Þ¼µå·ÎºÎÅÍ ¸®ÅϵÈ
ÀÏÀÌ ÀÖ½À´Ï´Ù.
SocketException
- Æ®·¡ÇÈ Å¬·¡½º ¶Ç´Â ¼ºñ½ºÇüÀÇ °ªÀ» ÃëµæÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetTrafficClass(int)
public void setReuseAddress(boolean on) throws SocketException
TCP Á¢¼ÓÀ» ´ÝÀ¸¸é, Á¢¼ÓÀÌ ´ÝÀºµÚ Á¢¼ÓÀÌ ÀÏÁ¤ÇÑ ½Ã°£ ŸÀÓ ¾Æ¿ô »óÅ´ë·Î µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù (º¸Åë, TIME_WAIT »óÅ ¶Ç´Â 2MSL ´ë±â »óÅ·ΠºÒ¸°´Ù). ÁÖÁöÀÇ ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Æ®¸¦ »ç¿ëÇÏ´Â ¾îÇø®ÄÉÀ̼ÇÀÇ °æ¿ì, ¼ÒÄÏ ÁÖ¼Ò ¶Ç´Â Æ÷Æ®¿¡ °ü·ÃµÈ Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡ ÀÖÀ¸¸é, ¼ÒÄÏÀ» ÇÊ¿äÇÑ SocketAddress¿¡ ¹ÙÀεå ÇÒ ¼ö ¾ø´Â °ÍÀÌ ÀÖ½À´Ï´Ù.
bind(SocketAddress)
¸¦
»ç¿ëÇØ ¼ÒÄÏÀ» ¹ÙÀεå Çϱâ Àü¿¡ SO_REUSEADDR¸¦ À¯È¿ÇÏ°Ô Çϸé, ÀÌÀüÀÇ Á¢¼ÓÀÌ Å¸ÀÓ ¾Æ¿ô »óÅ¿¡¼µµ ¼ÒÄÏÀ» ¹ÙÀεå ÇÒ ¼ö ÀÖ½À´Ï´Ù
.
Socket°¡ ÀÛ¼ºµÇ¸é, SO_REUSEADDR Ãʱ⼳Á¤Àº ¹«È¿°¡ µË´Ï´Ù.
¼ÒÄÏÀÌ ¹ÙÀÎµå µÇ¾ú´Ù (isBound()
¸¦
ÂüÁ¶) ³ªÁß¿¡ SO_REUSEADDR¸¦ À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÏ´Â °æ¿ìÀÇ µ¿ÀÛÀº Á¤ÀǵÇÁö ¾Ê½À´Ï´Ù.
on
- ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ÇÏ°Ô ÇÒ±î ¹«È¿·Î ÇÏ´ÂÁö¸¦ ÁöÁ¤
SocketException
- SO_RESUEADDR ¼ÒÄÏ ¿É¼ÇÀ» À¯È¿ ¶Ç´Â ¹«È¿·Î ÇÒ °æ¿ì¿¡ ¿¡·¯°¡ ¹ß»ýÇÏ´Â °æ¿ì, ȤÀº ¼ÒÄÏÀÌ ´Ý°í ÀÖ´Â °æ¿ìgetReuseAddress()
,
bind(SocketAddress)
,
isClosed()
,
isBound()
public boolean getReuseAddress() throws SocketException
boolean
Ä¡
SocketException
- ±âº»ÀÌ µÇ´Â ÇÁ·ÎÅäÄÝ·Î TCP ¿¡·¯µîÀÇ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìsetReuseAddress(boolean)
public void close() throws IOException
ÇöÀç ÀÌ ¼ÒÄÏÀÇ ÀÔÃâ·Â Á¶ÀÛÀ¸·Î ºí·Ï ¶°³¯ ¼ö ÀÖ¾î ¸ðµç thread°¡ SocketException
¸¦
Throw ÇÕ´Ï´Ù.
¼ÒÄÏÀÌ ´ÝÇôÁö¸é, ±× ÈÄÀÇ ³×Æ®¿öÅ©¿¡ ±× ¼ÒÄÏÀ» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù (Áï, ÀçÁ¢¼Ó ¶Ç´Â Àç¹ÙÀεå´Â ÇÒ ¼ö ¾ø´Ù). »õ·Î¿î ¼ÒÄÏÀ» ÀÛ¼ºÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.
ÀÌ ¼ÒÄÏ¿¡ °ü·ÃµÈ ä³ÎÀÌ Á¸ÀçÇÏ´Â °æ¿ì´Â ±× ä³Îµµ ´ÝÇôÁý´Ï´Ù.
IOException
- ÀÌ ¼ÒÄÏÀ» ´ÝÀ» ¶§ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìisClosed()
public void shutdownInput() throws IOException
¼ÒÄÏÀ¸·Î shutdownInput()¸¦ È£ÃâÇÑ µÚ¿¡ ¼ÒÄÏÀÇ ÀÔ·Â ½ºÆ®¸²·ÎºÎÅÍ Àо¸é, ½ºÆ®¸²Àº EOF¸¦ ¸®ÅÏÇÕ´Ï´Ù.
IOException
- ÀÌ ¼ÒÄÏÀ» Á¤ÁöÇÒ °æ¿ì¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìshutdownOutput()
,
close()
,
setSoLinger(boolean, int)
,
isInputShutdown()
public void shutdownOutput() throws IOException
IOException
- ÀÌ ¼ÒÄÏÀ» Á¤ÁöÇÒ °æ¿ì¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ìshutdownInput()
,
close()
,
setSoLinger(boolean, int)
,
isOutputShutdown()
public String toString()
String
·Î
º¯È¯ÇÕ´Ï´Ù.
Object
³»ÀÇ toString
public boolean isConnected()
public boolean isBound()
bind(java.net.SocketAddress)
public boolean isClosed()
close()
public boolean isInputShutdown()
shutdownInput()
public boolean isOutputShutdown()
shutdownOutput()
public static void setSocketImplFactory(SocketImplFactory fac) throws IOException
¾îÇø®ÄÉÀ̼ÇÀ¸·Î »õ·Î¿î Ŭ¶óÀÌ¾ðÆ® ¼ÒÄÏÀ» ÀÛ¼ºÇϸé, ¼ÒÄÏ ±¸Çö ÆÑÅ丮ÀÇ createSocketImpl
¸Þ¼µå°¡ ºÒ·Á°¡
½ÇÁ¦ÀÇ ¼ÒÄÏÀÌ ÀÛ¼ºµË´Ï´Ù.
ÆÑÅ丮°¡ À̹Ì
¼³Á¤µÇ¾î ÀÖÁö ¾ÊÀº ÇÑ, ¸Þ¼µå¿¡ null
À»
°Ç³×Á־ ¾Æ¹«°Íµµ ÇàÇØÁöÁö ¾Ê½À´Ï´Ù.
½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼µå´Â ÃÖÃÊ·Î ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory
¸Þ¼µå¸¦ È£ÃâÇÏ´Â °ÍÀ¸·Î ÀÌ Á¶ÀÛÀÌ Çã°¡µÇ°í ÀÖ´Â °ÍÀ» È®ÀÎÇÕ´Ï´Ù. ÀÌ °á°ú, SecurityException°¡ µÇ´Â ÀÏÀÌ ÀÖ½À´Ï´Ù.
fac
- ¸ñÀûÀÇ ÆÑÅ丮
IOException
- ¼ÒÄÏ ÆÑÅ丮ÀÇ ¼³Á¤Áß¿¡ ÀÔÃâ·Â ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì
SocketException
- ÆÑÅ丮°¡ À̹Ì
Á¤Àǵǰí ÀÖ´Â °æ¿ì
SecurityException
- ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀú°¡ Á¸ÀçÇØ, ½ÃÅ¥·¯Æ¼ ¸Å´ÏÀúÀÇ checkSetFactory
¸Þ¼µå°¡ ÀÌ Á¶ÀÛÀ» Çã°¡ÇÏÁö ¾Ê´Â °æ¿ìSocketImplFactory.createSocketImpl()
,
SecurityManager.checkSetFactory()
public void setPerformancePreferences(int connectionTime, int latency, int bandwidth)
¼ÒÄÏÀº µðÆúÆ®·Î TCP/IP ÇÁ·ÎÅäÄÝÀ» »ç¿ëÇÕ´Ï´Ù. ±¸Çö¿¡ µû¶ó¼´Â TCP/IP¿Í´Â ´Ù¸¥ ÆÛÆ÷¸Õ½º Ư¼ºÀ» °¡Áö´Â ´ëü ÇÁ·ÎÅäÄÝÀÌ Á¦°øµÇ´Â Àϵµ ÀÖ½À´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀº ÀÌ ¸Þ¼µå¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î ±¸ÇöÀ¸·Î ÀÌ¿ë °¡´ÉÇÑ ÇÁ·ÎÅäÄÝÀÇ ¼±Åýÿ¡ ÀÌ·¯ÇÑ ±ÕÇüÀÇ ÃëÇÏ´Â ¹æ¹ýÀ» ³ªÅ¸³»´Â µ¶ÀÚÀûÀÎ ¼³Á¤À» Ç¥ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÆÛÆ÷¸Õ½º ¼³Á¤Àº Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½, ÀÀ´ä ½Ã°£ÀÇ ¼Óµµ, ´ë¿ªÆøÀÇ ³ÐÀÌÀÇ »ó´ëÀûÀÎ Á߿䵵¸¦ ³ªÅ¸³»´Â 3°³ÀÇ Á¤¼ö°ª¿¡ ÀÇÇØ ±â¼úµË´Ï´Ù. Á¤¼öÀÇ Àý´ëÄ¡¿¡ °ü°è¼ºÀº ¾ø°í, ÇÁ·ÎÅäÄÝÀ» ¼±ÅÃÇϱâ À§Çؼ °ªÀ» ´ÜÁö ºñ±³ÇÕ´Ï´Ù. °ªÀÌ Å©¸éº¸´Ù °ÇÑ ¼³Á¤À» ³ªÅ¸³À´Ï´Ù. À߸øµÈ °ªÀº Á¤ÀÇ °ªº¸´Ù ¿ì¼± ¼øÀ§°¡ ³·Àº ÀÏÀ» ³ªÅ¸³À´Ï´Ù. ¾îÇø®ÄÉÀ̼ÇÀÌ ÀÀ´ä ½Ã°£ÀÇ ¼Óµµ¿Í ´ë¿ªÆøÀÇ ³ÐÀ̺¸´Ù Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½À» ¿ì¼±ÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼µå¸¦ (1, 0, 0) À̶ó°í ÇÏ´Â °ªÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù . ¾îÇø®ÄÉÀ̼ÇÀÌ ÀÀ´ä ½Ã°£ÀÇ ¼Óµµº¸´Ù ´ë¿ªÆøÀÇ ³ÐÀ̸¦, ¶Ç Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½º¸´Ù ÀÀ´ä ½Ã°£ÀÇ ¼Óµµ¸¦ ¿ì¼±ÇÏ´Â °æ¿ì, ÀÌ ¸Þ¼µå¸¦ (0, 1, 2) À̶ó°í ÇÏ´Â °ªÀ¸·Î È£ÃâÇÒ ¼ö ÀÖ½À´Ï´Ù .
ÀÌ ¼ÒÄÏÀÌ Á¢¼ÓµÈ µÚ¿¡ ÀÌ ¸Þ¼µå¸¦ È£ÃâÇØµµ, ¾Æ¹«°Íµµ ÇàÇØÁöÁö ¾Ê½À´Ï´Ù.
connectionTime
- Á¢¼Ó ½Ã°£ÀÇ ÂªÀ½ÀÇ »ó´ëÀûÀÎ Á߿䵵¸¦ ³ªÅ¸³»´Â intlatency
- ÀÀ´ä ½Ã°£ÀÇ ¼ÓµµÀÇ »ó´ëÀûÀÎ Á߿䵵¸¦ ³ªÅ¸³»´Â intbandwidth
- ´ë¿ªÆøÀÇ ³ÐÀÌÀÇ »ó´ëÀûÀÎ Á߿䵵¸¦ ³ªÅ¸³»´Â int
|
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 µµ ÂüÁ¶ÇϽʽÿÀ.