
25.08.2007, 19:21
|
|
Постоянный
Регистрация: 05.06.2007
Сообщений: 335
Провел на форуме: 4319431
Репутация:
677
|
|
вопрос про многопоточность, привожу код:
#тут создаются потоки:
for( 0..$thr ) { $trl[$_] = threads->create( \&Flood, $_ ); }
for( 0..$thr ) { $trl[$_]->join; }
#сама функция
sub Flood
{
$sock = IO::Socket::INET->new(PeerAddr => $host,
PeerPort => $port,
Proto => 'tcp') || сокет или смерть
.... ....
}
$host и $port - это адрес и порт прокси сервера, ни ко всем прокси удается подключится, будет ли в этом случае поток которому не удалось подключится висеть в памяти или сам умрет? если будет, то его нужно убить, как вызвать смерть потока в случае если создать сокет не удалось? знаю что $thr->kill() но как им правильно воспользоваться?
сейчас у меня сделано так, хз на сколько это правильно
$sock = IO::Socket::INET->new(PeerAddr => $host,
PeerPort => $port,
Proto => 'tcp') || return 0;
Последний раз редактировалось C!klodoL; 25.08.2007 в 19:27..
|
|
|