
27.10.2008, 21:07
|
|
Members of Antichat - Level 5
Регистрация: 09.10.2006
Сообщений: 1,698
Провел на форуме: 9098076
Репутация:
4303
|
|
Код:
#!/usr/bin/perl
use Socket;
use threads;
use threads::shared;
my @ipr : shared;
$thr = 2; # потоки
@ipr = ('192.168.0.1', '192.168.0.2', '192.168.0.3');
$p='135';
for(0..$thr)
{
$trl[$_] = threads->create(\&Prog, $_);
}
for(0..$thr)
{
$trl[$_]->join;
}
sub Prog {
while (@ipr){
$ip = shift;
socket(SOCK, PF_INET, SOCK_STREAM, getprotobyname('tcp'));
$iaddr = inet_aton($ip);
$paddr = sockaddr_in($p, $iaddr);
if(connect(SOCK, $paddr)) {
print $ip." [connect]\r\n";
}
else {
print $ip." [error]\r\n";
}
# send (SOCK, "", 0);
close(SOCK);
$i++;
}
}
Вроде так, только я там заюзал через массив, а не через хеш
Последний раз редактировалось Spyder; 27.10.2008 в 21:16..
|
|
|