- I have written a very simple socket server.
- It listens in post 63254.
- First i did a socket_create, socket_bind, socket_listen so here a connection is listening.
- Then in a loop i do the socket accpet. so here another listen.
- the read function reads untill i input exit.
- after that the resource id by socket_accept closes.
- and then the main connection closes.
在关闭所有连接点之后在TCPview中检查这一进程时,i 仍能看到系统过程显示63254个员额的TPAS_WAIT
如果一再次运行袖珍服务器方案,它将连接起来,如果一个全过程已经关闭,方案终止,现在可以看到另一个技术监评系统。 西非信托公司为同一港口服务。 但仍然可以第三次连接同一港口。
在回答问题时,据说不能联系等待状态的港口。
I opened firefox browser it opened 4 connections. when i closed it all closed and the system process showed 4 time waits for 2 minutes. all time wait stays for 2 minutes and disappears.
因此,我的结论是,每一环节都关在等待的时间,不能避免。
i 读到大量流动的很多员额,但还是肯定的。
www.un.org/Depts/DGACM/index_spanish.htm 我的服务器代码
<?
error_reporting(E_ALL);
set_time_limit(0);
ob_implicit_flush();
$str = ;
$buff = ;
$s = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if(!$s)die( Unable to create socket );
if(!socket_bind($s, 127.0.0.1 ,63254))
die("
Trying to Bind: ".socket_strerror(socket_last_error()));
if(!socket_listen($s,1))
die(socket_strerror(socket_last_error()));
while(1)
{
$acc = socket_accept($s);
if(!$acc)die(socket_strerror(socket_last_error()));
// echo "
".gettype($acc);
if(!$acc)die(socket_strerror(socket_last_error()));
while(1)
{
$str = socket_read($acc,512);
$buff.= $str;
echo $str;
// echo :: .gettype($str);
if($str===false)die(socket_strerror(socket_last_error()));
if($str=="exit
")break;
}
// if(!socket_shutdown($acc,2))echo socket_strerror(socket_last_error());
socket_close($acc);
if(preg_match( /exit/ ,$buff))break;
}
//echo "
Connection closed by server
";
//if(!socket_shutdown($s,2))echo socket_strerror(socket_last_error());
socket_close($s);
?>
www.un.org/Depts/DGACM/index_spanish.htm 客户代码
<?
set_time_limit(0);
$f = fsockopen( 127.0.0.1 ,63254,$a,$b,10);
if(!$f)die( cannot connect );
echo "
Connected:
";
do{
$buff = fgets(STDIN);
fwrite($f,$buff);
}while($buff!="exit
");
fclose($f);
?>
如果不足够,就需要建议改进更好的客户服务器。 该法典只是儿童游戏。 只是试图理解沟通方式。