Perl и многопоточность. Возвращение к програмированию

Да-да. Я снова начал програмировать на Perl. Хочу написать небольшой поисковичек по локальным ftp-ресурсам моей домашней сети. А прежде всего столкнулся с проблемой сканирования сети на предмет доступных ftp-серверов с разрешеным доступом для анонимуса. Набросав небольшой скриптец, запустив его – понял, что для сканирования сети 10/10 потребуется 5*255*255*63 = 20482875 секунд или больше 250 дней (-; и тогда я подумал: «к черту! а зачем придумали многопоточность?» к тому же моя домашняя FreeBSD 7.0 с двуядерным Xeon E3110 достаточно хорошо должна стправиться с такими приложениями. И я начал копать в эту сторону.

Для начала надо было пересобрать Perl с поддержкой многопоточности. Сделано.

Можно создавать потоки как с контролем за жизнью, так и без контроля (типа запустил и забыл).

В первом случае используем:

threads->create(\&mySub,$param)->join;

А во втором:

threads->create(\&mySub,$param)->detach;

Ежели нам надо запустить кучу тредов и не дать основному скрипту закончить работу до окончания работы потоков, можно использовать такую конструкцию:

foreach (1..$numThreads) {
threads->create(\&mySub,$param);
};

foreach (threads->list) { $_->join; };

list – возвращает список потоков, для которых еще не применили join или detach.

Ну вот и основное, что я пользую нынче в многопоточных приложениях на Perl. Надеюсь, не последний пост на эту тему (-;

____

И еще:

Интересный SEO-блог Дмитриева Романа.

Дракасмит сделал RE: дизайн, а у Креативного кота глючит CuteFTP

Похожие записи

Теги: , , , ,

Запись сделана в категории Daily, FreeBSD, Programming

8 Responses to “Perl и многопоточность. Возвращение к програмированию”


Ап тИЦ 08.09.08 - Быстро однако - SEO блог, Заработок в интернете Сентябрь 8th, 2008 at 12:58

[...] А у mult’a ещё не дошли руки чтобы поставить фав икон потому что он занят программированием [...]

Сегодня апдейт тИЦ | SEO 73: дневник вебмастера Сентябрь 8th, 2008 at 15:35

[...] что поддержка Firefox 2 продлится до конца 2008, а mult возвратился к программиронанию на Perl’е. [...]

Отчетик за неделю | mAdvertise.ru - Блог о маркетинге и манимэйкинге Сентябрь 9th, 2008 at 02:52

[...] Multed погружает нас в мир многопотчности и Перла. Довольно интересные мысли. [...]

Все от создания сайтов до раскрутки. » Архив сайта » Ап тИЦ 08.09.08 - Быстро однако Сентябрь 10th, 2008 at 05:43

[...] А у mult’a ещё не дошли руки чтобы поставить фав икон потому что он занят программированием [...]

SEO с турбонаддувом » Что в чемодане? Сентябрь 12th, 2008 at 01:11

[...] Шаришь в Perl? Учи многопоточность! [...]

Боксер (1 comments) Апрель 8th, 2009 at 13:04

Спасибо за статью. Очень помогла.

Booboancy (1 comments) Июль 9th, 2009 at 06:03

Всем доброго времени суток…Если кто то ищет сервер Ventrilo для своего клана.
У меня есть сервер Вентрило(арендованный) если кому нужен сервер могу отдать под клан, гильдию…
Пишите мне в ICQ: 4664184

P.S. Уважаемые модераторы и админитрация форума, прошу, если я запостил не в тот раздал, просьба перенести в нужный, Заранее спасибо.

mult (110 comments) Июль 9th, 2009 at 10:39

гыгы. это не форум, уважаемый товарисч спамер.



Leave a Reply


Get Adobe Flash playerPlugin by wpburn.com wordpress themes