遍匈 / socket園殻 /

聞喘listen()才accept()痕方

<貧匯准 和匯准>
斤噐捲暦匂極殻會?聞喘 bind() 鰯協耗俊忖朔?珊俶勣聞喘 listen() 痕方斑耗俊忖序秘瓜強酌油彜蓑?壅距喘 accept() 痕方?祥辛參昧扮峒哘人薩極議萩箔阻。

listen() 痕方

宥狛 listen() 痕方辛參斑耗俊忖序秘瓜強酌油彜蓑?万議圻侏葎?
int listen(int sock, int backlog); //Linux
int listen(SOCKET sock, int backlog); //Windows
sock 葎俶勣序秘酌油彜蓑議耗俊忖?backlog 葎萩箔錦双議恷寄海業。

侭僚瓜強酌油?頁峺輝短嗤人薩極萩箔扮?耗俊忖侃噐“鋒蓄”彜蓑?峪嗤輝俊辺欺人薩極萩箔扮?耗俊忖嘉氏瓜“蚕佰”栖峒哘萩箔。

萩箔錦双

輝耗俊忖屎壓侃尖人薩極萩箔扮?泌惚嗤仟議萩箔序栖?耗俊忖頁短隈侃尖議?峪嬬委万慧序産喝曝?棋輝念萩箔侃尖頼穎朔?壅貫産喝曝嶄響函竃栖侃尖。泌惚音僅嗤仟議萩箔序栖?万断祥梓孚枠朔乏會壓産喝曝嶄電錦?岷欺産喝曝諾。宸倖産喝曝?祥各葎萩箔錦双?Request Queue?

産喝曝議海業?嬬贋慧謹富倖人薩極萩箔?辛參宥狛 listen() 痕方議 backlog 歌方峺協?徽梢捷葎謹富旺短嗤焚担炎彈?辛參功象低議俶箔栖協?旺窟楚弌議三辛參頁10賜宀20。

泌惚繍 backlog 議峙譜崔葎 SOMAXCONN?祥喇狼由栖畳協萩箔錦双海業?宸倖峙匯違曳熟寄?辛嬬頁叱為?賜宀厚謹。

輝萩箔錦双諾扮?祥音壅俊辺仟議萩箔?斤噐 Linux?人薩極氏辺欺 ECONNREFUSED 危列?斤噐 Windows?人薩極氏辺欺 WSAECONNREFUSED 危列。

廣吭?listen() 峪頁斑耗俊忖侃噐酌油彜蓑?旺短嗤俊辺萩箔。俊辺萩箔俶勣聞喘 accept() 痕方。

accept() 痕方

輝耗俊忖侃噐酌油彜蓑扮?辛參宥狛 accept() 痕方栖俊辺人薩極萩箔。万議圻侏葎?
int accept(int sock, struct sockaddr *addr, socklen_t *addrlen); //Linux
SOCKET accept(SOCKET sock, struct sockaddr *addr, int *addrlen); //Windows
万議歌方嚥 listen() 才 connect() 頁屢揖議?sock 葎捲暦匂極耗俊忖?addr 葎 sockaddr_in 潤更悶延楚?addrlen 葎歌方 addr 議海業?辛喇 sizeof() 箔誼。

accept() 卦指匯倖仟議耗俊忖栖才人薩極宥佚?addr 隠贋阻人薩極議IP仇峽才極笥催?遇 sock 頁捲暦匂極議耗俊忖?寄社廣吭曝蛍。朔中才人薩極宥佚扮?勣聞喘宸倖仟伏撹議耗俊忖?遇音頁圻栖捲暦匂極議耗俊忖。

恷朔俶勣傍苧議頁?listen() 峪頁斑耗俊忖序秘酌油彜蓑?旺短嗤寔屎俊辺人薩極萩箔?listen() 朔中議旗鷹氏写偬峇佩?岷欺囑欺 accept()。accept() 氏怦毘殻會峇佩?朔中旗鷹音嬬瓜峇佩??岷欺嗤仟議萩箔欺栖。
<貧匯准 和匯准>

AltStyle によって変換されたページ (->オリジナル) /