Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха переехала на новый сервер, ура!

Краснодарское время: 25 Май, 2012, 07:54:36

Страниц: [1]
Печать
Автор Тема: Multithreading - Thread Pool  (Прочитано 298 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
phpdude    ↓ 
15 Декабрь, 2011, 08:05:54
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: 20790
Сила слова: 1.66

Надо. Никто не знает либы? не хочу писать велосипед, надеюсь не придется :-)
 
Задача - например в 100 потоков делать какую то хуйню и например при получении сигнала что освободилось место в пуле - занять его :-)
 
Сумбурно, но както так по человечьи
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
Troy    ↓ 
15 Декабрь, 2011, 08:14:43 , спустя 8 минут 49 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Джедаи

Карма: 45
Сообщений: 2393
Сила слова: 1.88

phpdude, вчера вроде на хабре про CThread писали
Записан

Ivan    ↓ 
15 Декабрь, 2011, 08:18:01 , спустя 3 минуты 18 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 27
Сообщений: 1366
Сила слова: 1.98


phpdude, вчера вроде на хабре про CThread писали

1. это топик про питон
2. CThread говно как и все "многопоточности" на пхп
Записан

phpdude    ↓ 
15 Декабрь, 2011, 08:25:41 , спустя 7 минут 40 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: д-о-х-у-я!
Сила слова: 1.66


phpdude, вчера вроде на хабре про CThread писали
удава поймал!
Спустя 19 секунд добавил
зы: в пхп многопотчности нет, а если есть то она гавно, как и сам пхп :-)
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
fgets    ↓ 
15 Декабрь, 2011, 08:51:54 , спустя 26 минут 13 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: -1
Сообщений: 1119
Сила слова: -0.09

http://habrahabr.ru/blogs/php/134501/ это чтоли?
Записан

эй детка не ссы в бассейн

Если в бочку с говном положить ложку меда — получится бочка говна. Если в бочку с медом положить ложку говна, не обольщайтесь ...
Troy    ↓ 
15 Декабрь, 2011, 08:58:57 , спустя 7 минут 3 секунды
НЕ ХУЕТА! ХУЕТА!

Группа: Джедаи

Карма: 45
Сообщений: 2393
Сила слова: 1.88

Упс, не прочитал категорию топика ^^ сам думаю "нахрена?"
Записан

PandoraBox2007    ↓ 
17 Декабрь, 2011, 08:09:27 , спустя 1 день 11 часов 10 минут 30 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 0
Сообщений: 21
Сила слова: 0

лови http://code.google.com/p/pyev/
Спустя 2 минуты 23 секунды добавил
или вот http://packages.python.org/pyev/pyev.html
Записан

mathete    ↓ 
17 Декабрь, 2011, 11:48:41 , спустя 3 часа 39 минут 14 секунд
НЕ ХУЕТА! ХУЕТА!

Карма: 12
Сообщений: 70
Сила слова: 17.14

phpdude, а тебе для чего?
 
Вообще Queue.Queue все юзают так или иначе. Например: http://www.ibm.com/developerworks/aix/library/au-threadingpython/
Вот говорят в 3.2 появился concurent.futures (http://asvetlov.blogspot.com/2011/02/3.html), может его можно портировать под 2.7
 
А лучше, конечно, в сторону асинхронности посмотреть. Только для этого не обязателен libev, как пишет PandoraBox2007. Если тебе, например, надо интернет собирать быстро-быстро, то pycurl лучшее решение.
Записан
phpdude    ↓ 
17 Декабрь, 2011, 12:31:32 , спустя 42 минуты 51 секунду
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: 20790
Сила слова: 1.66

Если тебе, например, надо интернет собирать быстро-быстро, то pycurl лучшее решение
ага, его и надо собирать ... две задачки - для моих тестов мне надо спарсить почти 7млн страниц, не хочу полгода ждать, это думаю понятно ну и ваще поисковичек небольшой, тоже придется с несколькими миллионами поработать :-)
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
mathete    ↓ 
17 Декабрь, 2011, 01:08:34 , спустя 37 минут 2 секунды
НЕ ХУЕТА! ХУЕТА!

Карма: 12
Сообщений: 70
Сила слова: 17.14

phpdude, ну тогда уже все велосипеды написаны. Смотри scrapy или tornado асинхронный клиент
Записан
phpdude    ↓ 
17 Декабрь, 2011, 07:47:15 , спустя 6 часов 38 минут 41 секунду
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: д-о-х-у-я!
Сила слова: 1.66

то pycurl лучшее решение
блеядь это же мой любимый курл на питоне! :-)
 
Высадка только в том, что в коде который я увидел в экзамплах он такой же уебищный и обертка эта как бы не дохуя дает ))
 
у меня есть для пыха своя разработочка DudeCurlMulti, вот она жарит не под детски, придется чтото такое же под пайтон чтоли писать %)
 
просто в экзамплах описание - страшно так юзать, нихуя не удобно и надо самому все состояния отслеживать, это пиздец имхо =)
Спустя 3 минуты 20 секунд добавил
у меня вот такое юзобретение с калбаками, на котором многоптоочный парсер с проксями написать - дело 15 строк вместе с обработкой результатов :D
 
PHP

function getCurl($url, $proxy = false)
{
    $options = array(
        "useragent" => "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2) Gecko/20100115 Firefox/3.6 GTB6",
        "connecttimeout" => 10,
        "timeout" => 10
    );
 
    if ($proxy) {
        $options['proxy'] = $proxy;
    }
    return new DudeCurl($url, $options);
}
 

$mc = new DudeCurlMulti(PROXY_CHECK_THREADS);
foreach ($proxylist as $proxy)
{
    $curl = getCurl(PROXY_CHECK_URL, $proxy);
    $mc->AddCurl($curl, "checkProxyCallback", $proxy);
}
$mc->Process();
 
function checkProxyCallback(DudeCurlMulti $mc, DudeCurl $curl, $html, $proxy)
{
    if (!$html || $curl->Response->HttpCode != 200) {
        return;
    }
 
    $id = parse_url(PROXY_CHECK_URL, PHP_URL_QUERY);
    parse_str($id, $id);
    if (md5($id['id']) != $html) {
        return;
    }
 
    echo ".";
    global $proxies;
    $proxies[] = $proxy;
}
 

это был многопоточный чекер прокси
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
mathete    ↓ 
17 Декабрь, 2011, 09:22:20 , спустя 1 час 35 минут 5 секунд
НЕ ХУЕТА! ХУЕТА!

Карма: 12
Сообщений: 70
Сила слова: 17.14

phpdude, зачем писать то что-то?
 
Ну ещё раз:

phpdude, ну тогда уже все велосипеды написаны. Смотри scrapy или tornado асинхронный клиент

 
вот торнадовский клиент, который на pycurl: http://www.tornadoweb.org/documentation/httpclient.html
вот scrapy (он на twisted), по сути медленнее, но зато совершенно полноценны: http://doc.scrapy.org/en/0.14/intro/tutorial.html
Спустя 2 минуты 24 секунды добавил
scrapy - это фреймворк для краулинга. Джанго наоборот. Сбор любого сайта сводится к десяткам двум строчек практически конфигурирования.
Записан
phpdude    ↓ 
17 Декабрь, 2011, 09:31:35 , спустя 9 минут 15 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 345
Сообщений: 20790
Сила слова: 1.66

mathete, а вот асинхронный торнадо мне понравится я думаю :-)
 
я scrapy посмотрел, это чуток не то :-)
 
ладно попробую заюзать, на неделе, не щас :)
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: artoodetoo