Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 18, 2012 12:21:39

ZZZ
От: Москва
Зарегистрирован: 2008-04-03
Сообщения: 2161
Репутация: +  26  -
Профиль   Адрес электронной почты  

Такой хак (lambda вместо списка параметров)

Вот поглядываю иногда любимый форум и диву даюсь от некоторых ответов... Конечно третий питон не нужен. Да и питон вообще! Зачем разработчики фигнёй маются -- поправили бы лучше косяки Си++...



Офлайн

#2 Окт. 18, 2012 22:16:33

@cckyi_boxxx
От:
Зарегистрирован: 2012-01-13
Сообщения: 181
Репутация: +  14  -
Профиль   Отправить e-mail  

Такой хак (lambda вместо списка параметров)

Ровно сижу. С удобством. Мне модулей хватает.

@cckyi_boxxx: не читал, но порицаю…

Кодировка давно починена, если что. GIL мешает только виртуально, если руки кривые. На самом деле при нагрузке нужно масштабирование на кластер, что предполагает многопроцессовость а не многопоточность.

один хрен главный косяк - код на 2-м питоне не станет работать под интерпретатором 3-го , насчет многопроцессовости сказать ничего не могу так как тупо привык к потокам и последнюю ни разу не юзал

Про удобное общение потоков — вообще не понял. Есть конкретное предложение или это абстрактная хотелка из серии «сделайте мне красиво»?
опишу ситуацию :
к примеру имеем 3 потока + 1 главный в котором у нас юзер интерфейс
и часто бывает надо что-бы один из потоков произведя определенные действия передал массив с результатами своей работы (в зависимости от того какой результат) либо 2-му , либо 3-му , а те в свою очередь до получения данных выполняли другую работу но после получения переключились-бы на обработку полученных данных

насколько мне известно поток может “общаться” только с помощью сигналов и только с главным потоком что я и пытался выше сказать

из-за невозможности реализации этого разработка предпоследнего моего проекта заняла гораздо больше времени чем я расчитывал



Офлайн

#3 Окт. 19, 2012 01:48:18

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

Такой хак (lambda вместо списка параметров)

@cckyi_boxxx, там большинство из того, что ты написал, как раз поправили Юникод от байтов отделили еще жестче, чем в яве (перекодирование без указания кодировки запрещено), удобное общение - например? GIL был, есть и будет. Без гила есть pypi, если не ошибаюсь.
Просто, кроме юникода, реально новых нужных фич нет, и обратной совместимости тоже нет. Вот бугурт по этому поводу.

Андрей Светлов
Мне модулей хватает.
Интересно, каких? Мне немного надо, и то не хватает.

Андрей Светлов
GIL мешает только виртуально, если руки кривые.
Назови еще один язык, в котором многопоточная программа на многоядернике будет работать медленнее, чем на одном ядре. Все эти асинхронные фреймверки начинают окупаться на 10к соединений, а до этого есть ничто иное, как костыль, призванный скрыть, что питон не может в многопоточность.

Многопроцессовость - это юнипс костыль, на винде многопоточность работает быстрее, не говоря о том, что за счет общей памяти коммуникация между потоками будет быстрее, чем между процессами.

Андрей Светлов
На самом деле при нагрузке нужно масштабирование на кластер
Всем поголовно нужно? У всех кластеры появились? Да и кластер на питоньем коде - обычно бред, узкое место проще переписать на Си, а там с этим проблем нету.
Одно другого не исключает - можно в пределах одной машины иметь многопоточность, на каждую машину по процессу.

@cckyi_boxxx
опишу ситуацию :
к примеру имеем 3 потока + 1 главный в котором у нас юзер интерфейс
и часто бывает надо что-бы один из потоков произведя определенные действия передал массив с результатами своей работы (в зависимости от того какой результат) либо 2-му , либо 3-му , а те в свою очередь до получения данных выполняли другую работу но после получения переключились-бы на обработку полученных данных

насколько мне известно поток может “общаться” только с помощью сигналов и только с главным потоком что я и пытался выше сказать

из-за невозможности реализации этого разработка предпоследнего моего проекта заняла гораздо больше времени чем я расчитывал
Чет каша и бред. Архитектуру я не понял, в каком языке ты бы это сделал и как?

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

Отредактировано odnochlen (Окт. 19, 2012 09:36:10)

Офлайн

#4 Окт. 19, 2012 07:20:56

@cckyi_boxxx
От:
Зарегистрирован: 2012-01-13
Сообщения: 181
Репутация: +  14  -
Профиль   Отправить e-mail  

Такой хак (lambda вместо списка параметров)

Чет каша и бред. Архитектуру я не понял, в каком языке ты бы это сделал и как?
в конечном итоге сделал но не через треды а через subprocess , писал спаммер гмыл , яши и аола , так у меня софтина сделана тупо из нескольких скриптов , 1 граббит мыла , остальные их брутят на предмет простых паролей а дальше сбрученные (как их набираеться более 100) отправляються к скрипту спамящему по контактам мыла , а не сбрученные к другому скрипту (как набираеться 1000) , но до того как эти 2 скрипта получают мыла для спама они занимаються граббингом соксов с таких ресурсов как hidemyass.com , hideme.ru

как такое реализовать в одном скрипте что-бы вместо subprocess.Popen() юзать треды я не нашел



Отредактировано @cckyi_boxxx (Окт. 19, 2012 07:21:18)

Офлайн

#5 Окт. 19, 2012 07:58:02

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

Такой хак (lambda вместо списка параметров)

@cckyi_boxxx
как такое реализовать в одном скрипте что-бы вместо subprocess.Popen() юзать треды я не нашел
Через очереди



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#6 Окт. 19, 2012 09:34:00

odnochlen
Зарегистрирован: 2012-06-28
Сообщения: 794
Репутация: +  14  -
Профиль   Отправить e-mail  

Такой хак (lambda вместо списка параметров)

Запускать в нескольких тредах (если скрипты на питоне, то кагбе необязательно через subprocess), а общение типа производитель-потребитель проще всего сделать через очереди - они уже вроде бы синхронизированые.

Офлайн

#7 Окт. 19, 2012 11:18:28

@cckyi_boxxx
От:
Зарегистрирован: 2012-01-13
Сообщения: 181
Репутация: +  14  -
Профиль   Отправить e-mail  

Такой хак (lambda вместо списка параметров)

ну переписывать его я не стану а за инфу спс буду курить маны тк в в софте что пишу сейчас такое тоже может понадобиться

ps: пока даже не представляю какой алгоритм работы получился-бы



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version