|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Vadim Tzirulnicov 2:5020/40.102 12 Dec 2003 14:55:29 To : All Subject : Fcntl --------------------------------------------------------------------------------
Мне нужно использовать неблокирующее соединение.
Глянул в "Разработку сетевых программ на Perl" - для включения такого соединения
используется функция blocking ($sock,0):
sub blocking{
my ($handle,$blocking)=@_;
die "Can't fcntl(F_GETFL)" unless my $flags=fcntl($handle,F_GETFL,0);
my $current=($flags & O_NONBLOCK)==0;
if (defined $blocking){
$flags &= ~O_NONBLOCK if $nonblocking;
$flags |= O_NONBLOCK unless $blocking;
die "Can't fcntl(F_SETFL)" unless fcntl($handle,F_SETFL,$flags);
}
return $current;
}
1) Во-первых, переменная $nonblocking не определена и непонятно потому какую
проверку делаем
2) Выполнение вылетает уже на первой проверке в функции:
Your vendor has not defined Fcntl macro F_GETFL
Как исправить ? Подкиньте раьбочий пример, pls !
... Пусть ваши желания сойдут с ума от ваших возможностей !
--- Team: [Ru.Znakomstva] [Mo.Apartments] [Mo.Apartments.Talk]
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/173513fd9ca93.html, оценка из 5, голосов 10
|