
Anton
15.06.2017
08:25:02
и да, треды почти всегда не нужны в питоне

Nikolay
15.06.2017
08:25:10

Маришка
15.06.2017
08:25:20

Igor
15.06.2017
08:25:22

Google

Oleg
15.06.2017
08:25:29
для этого есть асинхронность, треды тут - оверинжиниринг
да, у меня работает 4 воркера, асинхронно разгребает входящие...
нахрена мне воркер блокировать задачей, если он в это время может продолжать разгребать?
я поднимаю тред в котором выполняет задача, даже если она 20 минут делается

Nikolay
15.06.2017
08:25:37
плюс - await и yield в нужном месте спасут отца русской демократии

Anton
15.06.2017
08:25:48
обработка картинок, дохера всего, что нагружает процессор

Nikolay
15.06.2017
08:26:03
треды не нужны

Anton
15.06.2017
08:26:08

Igor
15.06.2017
08:26:13
да, я понял, что ты мне отвечаешь))

Nikolay
15.06.2017
08:26:36

Anton
15.06.2017
08:26:37
я хз, что он делает при сохранении стейта

Igor
15.06.2017
08:26:44

Anton
15.06.2017
08:26:51
он же не говорит

Google

Nikolay
15.06.2017
08:26:56

Anton
15.06.2017
08:26:59
точнее говорит, но я не понимаю

Igor
15.06.2017
08:27:05
да норм
никто не понимает

Маришка
15.06.2017
08:27:13

Whore Amazing
15.06.2017
08:27:15
а я сказал что я делаю
и вы наверняка поняли бы
давайте об этом поговорим

Igor
15.06.2017
08:27:17
но имхо для телеграм-бота треды это перебор по умолчанию

Nikolay
15.06.2017
08:27:29
треды для большинства задач на питоне перебор по умолчанию

Igor
15.06.2017
08:27:34
ну или так, да

Маришка
15.06.2017
08:28:18
Вон в питонячате бегинерсов сидит чел который делает на pytelegrambotapi бота и загнулся от того что тот треды использует

Oleg
15.06.2017
08:28:41
хм, а чем загнулся-то?

Whore Amazing
15.06.2017
08:29:06
я на telepot делал довольно сложную штуковину
с бд, сельдереем и запросами к куче апи
без тредов

Маришка
15.06.2017
08:29:22
хм, а чем загнулся-то?
Так как он запускал базу данных и курсор в основном треде и пытался дергать их из других тредов

Whore Amazing
15.06.2017
08:29:42
хех

Oleg
15.06.2017
08:29:44
ну, это низя так делать )

Anton
15.06.2017
08:29:57

Igor
15.06.2017
08:30:05

Whore Amazing
15.06.2017
08:30:12

Маришка
15.06.2017
08:30:30
Он на тредах

Google

Whore Amazing
15.06.2017
08:30:35
разве?

Маришка
15.06.2017
08:30:39
Хуязве
Доку научись читать

Whore Amazing
15.06.2017
08:30:51
хм
в доке писали, что асинхронный

Маришка
15.06.2017
08:30:54
Нет

Oleg
15.06.2017
08:30:55
и python-telegram-bot тоже на тредах
там асинхрон заключается в пуле и тред-воркерах, асинхронно разгребающих евенты

Маришка
15.06.2017
08:31:28

Nikolay
15.06.2017
08:31:38

Whore Amazing
15.06.2017
08:31:39
Ну ладно.

Oleg
15.06.2017
08:32:33
ну так покажите мне нетредовую библиотеку для телеги, чот я таких не видел

Nikolay
15.06.2017
08:32:43

Anton
15.06.2017
08:33:34

Alex
15.06.2017
08:33:45

Oleg
15.06.2017
08:35:00
А есть какая-нибудь адекватная статья, где разжёвывается почему в похожих случаях лучше использовать aoi, а не треды?
Я из текущего диалога слышу только "ФУУ, так не делают" и не слышу ни одного весомого довода

Anton
15.06.2017
08:36:28
ну в двух словах если, то треды не дают параллелизма из-за gil, а на многопроцессорных архитектурах они еще медленнее могут работать, плюс переключение контекста стоит

Nikolay
15.06.2017
08:36:57

Anton
15.06.2017
08:37:10
в итоге получается, что на больших нагрузках корутины быстрее, удобнее

Google

Anton
15.06.2017
08:37:16

Oleg
15.06.2017
08:37:56
для телеграма это актуально? нагрузки ведь нет никакой

Anton
15.06.2017
08:38:13
в тредах можно огрести много проблем, а выигрыш получить сомнительный

Oleg
15.06.2017
08:38:27
ок ) значит буду разбираться с корутинами )
спасибо

Anton
15.06.2017
08:38:49
тем более, есл инагрузки нет, сделай просто асинхрон

*************
15.06.2017
08:39:55
main.py:
if user_send_message == 'Mobile':
run/goto mobile.py
elif user_s_m == 'TV':
goto tv.py
bot.polling()
mobile.py:
send_to_user_message_step_1
if answer == 'ok':
send_to_u_m_step_2
if ans == 'ok':
send_to_u_m_step_3 ...
process == 'ok'
return message ok and go to main.py

Whore Amazing
15.06.2017
08:40:29
научись оформлять код

Admin
ERROR: S client not available

*************
15.06.2017
08:40:31

Whore Amazing
15.06.2017
08:40:40
ненамного

Anton
15.06.2017
08:40:52
через backticks

Whore Amazing
15.06.2017
08:41:00
что за and go to? это какой-то питон, которого я не знаю.

Nikolay
15.06.2017
08:41:24

*************
15.06.2017
08:41:26

Alex
15.06.2017
08:41:34

Проксимов
15.06.2017
08:41:40

Alex
15.06.2017
08:42:21
ну блин. скажу снова о стейт машине.

Google

Whore Amazing
15.06.2017
08:43:04
снова скажу о кривой архитектуре.

*************
15.06.2017
08:43:22
знаю в питоне нет goto но вес вопрос именно для этого мне нужно чтото такое

Alex
15.06.2017
08:43:24

Whore Amazing
15.06.2017
08:44:09
заучи мантру YAGNI.

Anton
15.06.2017
08:45:01

Nikolay
15.06.2017
08:45:16

Anton
15.06.2017
08:45:23
и поищите библиотеки пайтона под это дело

Nikolay
15.06.2017
08:45:51

Anton
15.06.2017
08:46:26
ну не все сразу вкуривают в суть корутин

Nikolay
15.06.2017
08:46:42
ну, с async/await все легче стало сильно

Anton
15.06.2017
08:47:12
ага, именно поэтому их добавили

*************
15.06.2017
08:50:36
надо вот что, у меня есть главный процесс он при выборе юзера должен запускать другой и пока он не вернеть процесс финиш главный вообще не реагировал ни на что

Whore Amazing
15.06.2017
08:50:49

Anton
15.06.2017
08:50:55

Маришка
15.06.2017
08:51:01

Anton
15.06.2017
08:51:21

Маришка
15.06.2017
08:51:31
Архитектуру продумай нормально а не пиши хуйню

*************
15.06.2017
08:51:46

Whore Amazing
15.06.2017
08:51:52
Почему айти-девушки всегда такие злые?