Re: [問題] 請問一下Server-Client的問題
感謝板大的解答
目前得到的stdout如下
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
5
5
5
5
5
5
5
5
5
5
6
6
6
6
6
6
6
6
6
6
7
7
7
7
7
7
7
7
7
7
8
8
8
8
8
8
8
8
8
8
9
9
9
9
9
9
9
9
9
9
IO::Socket::INET=GLOBIO::Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9
fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO::Soc
ket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB
(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO:
:Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=
GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348)IO::Socket::INET=GLOB(0x9fc7348
)IO::Socket::INET=GLOB(0x9fc7348)
IO::Socket::INET=GLOB(0x9fc7348)出現一大堆
所以中間我就砍掉了
Client的程式執行會得到上面這樣的STDOUT~
Server的程式出現以下的錯誤訊息後也停止
Can't locate object method "create" via package "threads" at server.pl line 18.
Server的程式如下
#!/usr/bin/perl
#Server
use threads::shared;
use IO::Socket;
my $server = IO::Socket::INET->new(
LocalPort => 8088,
Type => SOCK_STREAM,
Listen => 32,
Reuse =>1
);
my @array : shared=();
print @array;
while(my $client = $server->accept() ) {
threads->create( "client_handler", $client); <==17行
}
sub client_handler {
my $client = shift;
while(<$client>)
{
push( @array, $_ );
}
print $client foreach( @array );
$client->shutdown(1);
$client->close();
}
話說之前沒有改為 my @array : shared=();而是 my @array = ();
沒有這樣的訊息~
是我client的程式有問題嘛!?(搔頭中)
--
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.72.195.107
→
04/13 21:37, , 1F
04/13 21:37, 1F
→
04/13 21:38, , 2F
04/13 21:38, 2F
→
04/13 21:50, , 3F
04/13 21:50, 3F
推
04/13 22:16, , 4F
04/13 22:16, 4F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 3 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章