listen

listen ÇÔ¼ö´Â ¿ÜºÎ·ÎºÎÅÍ µé¾î¿À´Â Á¢¼ÓÀ» °¨ÁöÇϱâ À§ÇØ Æ¯Á¤ ¼ÒÄÏÀÌ »ç¿ëµÉ °ÍÀÓÀ» À©µµ¿ìÁî ¼ÒÄÏ¿¡°Ô ¾Ë¸®´Â ÇÔ¼öÀÔ´Ï´Ù.

int listen (
        SOCKET   
s,
        int   
backlog
);

 

Parameters

s
[ÀÔ·Â] ¸®½¼ ÇϱâÀ§ÇØ »ç¿ëµÉ ¼ÒÄÏÀÇ ±â¼úÀÚ(descriptor)¸¦ ¸í½ÃÇÕ´Ï´Ù.

backlog
[ÀÔ·Â] ´ë±âÇÏ´Â Á¢¼ÓÀ» À§ÇÑ Å¥ÀÇ ÃÖ´ë ±æÀ̸¦ ¸í½ÃÇÕ´Ï´Ù. ÀÌ °ªÀÌ SOMAXCONN ÀÏ °æ¿ì, ±âº» ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ°¡ ÀûÀýÇÑ ÃÖ´ë Å¥ÀÇ ±æÀ̸¦ ¼³Á¤ÇÏ´Â ÀÏÀ» ´ã´çÇÏ°Ô µË´Ï´Ù.

Remarks

Á¢¼ÓÀ» Çã¿ëÇϱâ À§Çؼ­ ¼ÒÄÏÀº ¿ì¼± socket ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­ ¼ÒÄÏÀ» »ý¼ºÇÕ´Ï´Ù. ±×·±´ÙÀ½ bind ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­ ·ÎÄà ¾îµå·¹½º¸¦ ¹ÙÀεåÇÏÁÒ. ¸¶Áö¸·À¸·Î accept ÇÔ¼ö·Î Á¢¼ÓÀ» Çã¿ëÇÕ´Ï´Ù. µé¾î¿À´Â Á¢¼Ó¿äûÀ» ÀÓ½ÃÀúÀå Çϱâ À§ÇÑ Å¥ÀÇ ±æÀÌ´Â listen ÇÔ¼öÀÇ backlog ¸Å°³º¯¼ö¿¡ ÀÇÇؼ­ ¸í½ÃµË´Ï´Ù. listen ÇÔ¼ö´Â Á¢¼Ó ÁöÇâÇü(connection oriented)¼ÒÄÏ(¿¹:SOCK_STREAM) ÀÇ °æ¿ì¿¡¸¸ »ç¿ëµÈ´Ù´Â Á¡ ¸í½ÉÇսôÙ.

ÀϹÝÀûÀ¸·Î listen ÇÔ¼ö´Â Çѹø¿¡ Çϳª ÀÌ»óÀÇ Á¢¼Ó ¿ä±¸¸¦ °¡Áú ¼ö ÀÖ´Â ¼­¹ö¿¡ »ç¿ëµË´Ï´Ù. ¸¸¾à Á¢¼Ó¿äûÀÌ µé¾î¿À°í, Å¥°¡ °¡µæ Â÷ÀÖÀ¸¸é, ÇÁ·Î±×·¥Àº WSAECONNREFUSED ¶ó´Â ¿¡·¯Äڵ带 ÀÏÀ¸Å°¸ç ½ÇÆи¦ ÇÒ °ÍÀÔ´Ï´Ù.

¾îÇø®ÄÉÀ̼ÇÀº °°Àº ¼ÒÄÏ¿¡ ´ëÇؼ­ ÇѹøÀÌ»óÀÇ listen ÇÔ¼ö¸¦ È£Ãâ ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ·¸°Ô ÇÔÀ¸·Î½á ¸®½¼ ¼ÒÄÏ¿¡ ´ëÇÑ ÇöÀçÀÇ Å¥ÀÇ ÃÖ´ëÅ©±â(backlog)¸¦ ¾÷µ¥ÀÌÆ® ÇÒ ¼ö ÀÖ½À´Ï´Ù. »õ·Î ¼³Á¤µÈ Å¥ÀÇ Å©±âº¸´Ù ´õ ¸¹Àº Á¢¼ÓÀ» ÇÏ·Á°í ÇÏ´Â ¿ä±¸°¡ ÀÖÀ» °æ¿ì ÃÊ°úµÇ´Â Á¢¼Ó¿äûÀº ¸®¼ÂµÇ°í, ¹ö·ÁÁý´Ï´Ù.

Compatibility

backlog ¸Å°³º¯¼ö´Â ±âº» ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ¿¡ ÀÇÇؼ­ °áÁ¤µÇ´Â ÀûÀýÇÑ °ªÀ¸·Î Á¦Çѵ˴ϴÙ. ¹üÀ§¸¦ ³Ñ¾î¼­°Å³ª À߸øµÈ °ªÀ» ¼³Á¤ÇÏ´Â °æ¿ì ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ´Â ÀûÀýÇÑ °¡Àå °¡±î¿î °ªÀ¸·Î ÀÌ °ªÀ» ´ëü½Ãŵ´Ï´Ù. »ç½Ç»ó ½ÇÁ¦ÀûÀÎ backlog °ªÀ» ¾Ë¾Æ ³¾ ¼ö Àִ ǥÁØ ±ÔÁ¤ °°Àº°Ç ¾ø½À´Ï´Ù. ±×Àú ÀϹÝÀûÀ¸·Î SOMAXCONNÀ¸·Î ¼³Á¤ÇÏ´Â ¹æ¹ýÀÌ ÀϹÝÀûÀÔ´Ï´Ù.

Return Values

¿¡·¯°¡ ¹ß»ýÇÏÁö ¾ÊÀº °æ¿ì listen ÇÔ¼ö´Â 0À» ¹Ýȯ ÇÕ´Ï´Ù. ¿¡·¯°¡ ¹ß»ýÇÑ °æ¿ì´Â SOCKET_ERROR¸¦ ¹ÝȯÇÏ°í WSAGetLastError ÇÔ¼ö¸¦ ÀÌ¿ëÇؼ­ ƯÁ¤ ¿¡·¯Äڵ带 ¾ò¾î³¾ ¼ö ÀÖ½À´Ï´Ù.

Error Codes

WSANOTINITIALISED

ÀÌ ÇÔ¼ö¸¦ »ç¿ëÇϱâ Àü¿¡ ¼º°øÀûÀÎ WSAStartup ÇÔ¼öÀÇ È£ÃâÀÌ ¾ø¾ú½À´Ï´Ù.

WSAENETDOWN ³×Æ®¿÷ ¼­ºê ½Ã½ºÅÛ¿¡ ¿¡·¯°¡ ¹ß»ýÇß½À´Ï´Ù.
WSAEADDRINUSE ¼ÒÄÏÀÌ SO_REUSEADDR ¿É¼ÇÀ¸·Î ¸¶Å©µÇ¾î ÀÖÁö ¾ÊÀº »óÅ¿¡¼­ ¼ÒÄÏÀÇ ·ÎÄà ÁÖ¼Ò°¡ ÀÌ¹Ì »ç¿ë ÁßÀÔ´Ï´Ù.
WSAEINPROGRESS

ºí·°Å· À©¼Ó v1.1 ÀÌ ÇöÀç ÁøÇà ÁßÀ̰ųª, ¼­ºñ½º ÇÁ·Î¹ÙÀÌ´õ°¡ Äݹé ÇÔ¼ö¸¦ ¿©ÀüÈ÷ ó¸®ÇÏ°í ÀÖ½À´Ï´Ù.

WSAEINVAL ¼ÒÄÏÀÌ bind ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ¹ÙÀÎµå µÇÁö ¾Ê¾Ò½À´Ï´Ù.
WSAEISCONN ¸®½¼¼ÒÄÏÀ¸·Î »ç¿ëÇÏ·Á°í ÇÏ´Â ¼ÒÄÏÀÌ Á¢¼ÓµÈ »óÅÂÀÇ ¼ÒÄÏÀÔ´Ï´Ù.
WSAEMFILE »ç¿ë°¡´ÉÇÑ ¼ÒÄÏ ±â¼úÀÚ(descriptor)°¡ ³²¾ÆÀÖÁö ¾Ê½À´Ï´Ù.
WSAENOBUFS »ç¿ë°¡´ÉÇÑ ¹öÆÛ °ø°£ÀÌ ³²¾ÆÀÖÁö ¾Ê½À´Ï´Ù.
WSAENOTSOCK ±â¼úÀÚ(descriptor)°¡ ¼ÒÄÏ ±â¼úÀÚ°¡ ¾Æ´Õ´Ï´Ù.
WSAEOPNOTSUPP socket s ¸Å°³º¯¼ö·Î ³Ñ±ä ¼ÒÄÏÀÌ ¸®½¼ ¿¬»êÀ» Áö¿øÇϱ⿡ ÀûÀýÇÑ ÇüÅÂÀÇ ¼ÒÄÏÀÌ ¾Æ´Õ´Ï´Ù.

QuickInfo

Windows NT : »ç¿ë°¡´É
Windows : »ç¿ë°¡´É
Windows CE : ¹öÁ¯ 1.0 ±×¸®°í ±×ÀÌÈÄÀÇ ¹öÁ¯¿¡¼­ »ç¿ë°¡´É
Header :
          Win16/32 : winsock.h
          Win32-II : winsock2.h
Import Library :
          Win16 : winsock.lib
          Win32 : wsock32.lib
          Win32-II : ws2_32.lib

See Also

overview, accept, connect, socket