最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解決time_wait強(qiáng)制關(guān)閉socket

 更新時間:2007年12月11日 21:24:53   作者:  
解決time_wait
今天我在測試代碼的時候,邊開邊看電影,服務(wù)端的CPU消耗和內(nèi)存使用讓我挺滿意的

可是過了一會,在統(tǒng)計達(dá)到了一定連接后,后來連接很多無法登陸。象上公交車,擁

擠不堪無法上車,用netstat -an查看了下連接狀態(tài),time_wait狀態(tài)的端口非常多

原因就在此了,消耗完系統(tǒng)的端口數(shù),服務(wù)端將就無法接收新連接,找到問題就來說明

time_wait,這個東西默認(rèn)存活時間為2分鐘,夠長的,這點(diǎn)很要命,更多的大家百度下

對付這個問題,我寫了一個函數(shù),強(qiáng)制關(guān)閉socket,代碼環(huán)境{delphi7+windows xp}
PS:只會點(diǎn)pascal,其他不熟。

function ForceCloseSocket(DestSock:TSocket):Boolean;
var
  NoWait:Boolean;
  NLinger:Tlinger;
begin
  Result:=False;
  NoWait:=False;
  if SetSockOpt(DestSock,SOL_SOCKET,SO_DONTLINGER,@NoWait,sizeOf(Boolean))=SOCKET_ERROR then
    Result:=False;
  NLinger.l_onoff:=1;
  NLinger.l_linger:=0;  
  if SetSockOpt(DestSock,SOL_SOCKET,SO_LINGER,@NLinger,sizeOf(NLinger))=SOCKET_ERROR then
    Result:=False else Result:=True;
  if CloseSocket(DestSock)=SOCKET_ERROR then Result:=Flase else Result:=True;
end;

Dz編輯器真是頭大,麻煩,這個是強(qiáng)制關(guān)閉函數(shù),一點(diǎn)心得,與大家分享下,歡迎PM消息批評指正。

相關(guān)文章

最新評論

新余市| 温泉县| 布尔津县| 辽中县| 大荔县| 普安县| 罗山县| 阿城市| 大名县| 河北区| 陆良县| 仁寿县| 南丰县| 大冶市| 华坪县| 高碑店市| 定陶县| 含山县| 沛县| 壤塘县| 永嘉县| 湖北省| 手游| 确山县| 高平市| 丰城市| 连江县| 同心县| 宜川县| 会泽县| 驻马店市| 秭归县| 西峡县| 三原县| 甘泉县| 文安县| 达州市| 永福县| 哈巴河县| 吉安市| 招远市|