
МишанЯ
16.07.2019
05:11:57
Привет. Я к вам снова с asyncio.☺️

SetazeR
16.07.2019
05:14:14

МишанЯ
16.07.2019
05:15:31
Допустим у меня есть функция которая постоянно делает longpoll запрос для получения изменений, и мне надо, получив эти изменения отправить их на обработку, но при этом чтобы запрос продолжался. Как мне из этой функции заставить параллейно отработать функцию обработки изменения?

SetazeR
16.07.2019
05:16:26
пытаешься впихать синхронный код в асинхронщину?

Google

МишанЯ
16.07.2019
05:17:08
Могу ли я вызвать обработку методом
asyncio.gather(func())?

SetazeR
16.07.2019
05:18:18
ты там не бота на айограме пишешь случайно?

Tishka17
16.07.2019
05:19:33

SetazeR
16.07.2019
05:19:36

Tishka17
16.07.2019
05:20:06
Прежде чем браться за асинкио стоить разобраться в том как работают треды
https://docs.python.org/3/library/concurrent.futures.html#threadpoolexecutor

МишанЯ
16.07.2019
05:22:08

Tishka17
16.07.2019
05:22:41
И в чем разница?

SetazeR
16.07.2019
05:23:07

Google

Tishka17
16.07.2019
05:23:25

SetazeR
16.07.2019
05:23:42
а он не нужен?
а лол

МишанЯ
16.07.2019
05:23:50

SetazeR
16.07.2019
05:24:06
а то я везде эвэйтю in_thread
нходил где-то на SO так было

Tishka17
16.07.2019
05:24:49
Даже очередь видимо не нужна, достаточно ему экзекьютора

МишанЯ
16.07.2019
05:26:32
Я предполагаю в качестве сервера использовать vps 1cpu 512ram. Треды будут конкурировать, верно понимаю?

SetazeR
16.07.2019
05:26:38
я читал что результат выполнения эвэйтэбла ставится в некую очередь как посчитается

Tishka17
16.07.2019
05:27:10

SetazeR
16.07.2019
05:27:19
но когда оно вообще считается-то?

Tishka17
16.07.2019
05:27:22

SetazeR
16.07.2019
05:27:28
если поток один

МишанЯ
16.07.2019
05:27:43

Tishka17
16.07.2019
05:28:03

TpaBaKyP
16.07.2019
05:28:25
Есть ноутбук. Хочу сделать на нем хостинг свого сайта. Какую ОС ставить на него? Я думал что то типа Ubuntu server

SetazeR
16.07.2019
05:28:39

Tishka17
16.07.2019
05:28:54
Любую

Google

SetazeR
16.07.2019
05:29:12
хоть шиндовс сервер если секса очень охота

МишанЯ
16.07.2019
05:29:40

SetazeR
16.07.2019
05:30:18
а выполнение-то того что эвэйтится когда происходит?

МишанЯ
16.07.2019
05:31:02

Tishka17
16.07.2019
05:34:24
А то, что касается чтения из сети - ну так там ничего не делается, просто ожидание буфера

МишанЯ
16.07.2019
05:43:08
Вот набросал что то похожее

SetazeR
16.07.2019
05:43:34
async def main()

МишанЯ
16.07.2019
05:43:55

Tishka17
16.07.2019
05:44:06
Ты понимаешь, что от этого зависит, будет это вообще работать или нет
Если ты например полчаса там считаешь матрицы на питоне, хрен тебе а не параллельная обработка - тред заблокируется на одной корутине
И все будут ждать её завершения

SetazeR
16.07.2019
05:45:45
получается хуйню я понаписал

МишанЯ
16.07.2019
05:46:40
Да что у тебя там в обработчике происходит?
Проверяет что прислали, сверяет команда ли это или просто текст. Это чпт бот. Проверяет сидит ли этот чел в чате, если нет, то шлёт справку как зайти, если да, то шлёт сообщение остальным. Или если это команда из списка команд, то обрабатывает её и высылает ему ответ. Там конструкция if elseif else как волос на обезьяне?

Google

SetazeR
16.07.2019
05:47:00
Тишка
ты меня запутал

Tishka17
16.07.2019
05:47:54

МишанЯ
16.07.2019
05:48:15
А асинк хочу сразу воткнуть чтоб в будущем модифицировать скрипт и больше функционала впихнуть

Tishka17
16.07.2019
05:48:41
Грубо - пока у тебя не будет 10000 одновременных юзеров, об асинке можешь не думать

МишанЯ
16.07.2019
05:49:34
Ну и чём тебе ThreadPoolExecutor не подошёл?
Как он себя поведет, если надо будет в чате от человек 100 принять сообщение и отправить всем исключая адресата. А количество человек я не знаю сколько будет, может сто, больше меньше.

Tishka17
16.07.2019
05:51:49
Я не знаю как себя поведет ВК когда ты попытаешьмч послать одновременно 100*100 сообщений. Мне кажется, тебя просто срежут по лимитам частоты обращений

Andrey
16.07.2019
05:51:55
блин, не могу понять, как работать с модулем threading. сделал функцию, которая принимает один аргумент, есть лист со значениями, которые надо передать этой функции, хочу создавать по треду на каждый аргумент и получается какая-то фигня.
for x in all_ips:
print(x)
my_thread = threading.Thread(target=func, args=(x, ))
my_thread.start()
и он мне сначала выводит несколько значений, а потом пишет func() takes 1 positional argument but 12 were given

Tishka17
16.07.2019
05:52:05

Andrey
16.07.2019
05:52:16
и так несколько раз с разными значениями числа аргументов

Tishka17
16.07.2019
05:52:36

МишанЯ
16.07.2019
05:52:40

Andrey
16.07.2019
05:52:58
Чо
ну самый простой пример, надо обработать кучу аргументов функции, всё как в примерах пишут

Tishka17
16.07.2019
05:53:07
И чтобы видно было на какую строку ругается

МишанЯ
16.07.2019
05:53:54

Google

Tishka17
16.07.2019
05:54:46

Andrey
16.07.2019
05:54:52

МишанЯ
16.07.2019
05:56:52

Tishka17
16.07.2019
05:57:03

МишанЯ
16.07.2019
05:57:13
Так я никогда ничего не выучу, там кусок там...

Tishka17
16.07.2019
05:57:14
Когда поймёшь, бери асинк

МишанЯ
16.07.2019
05:58:50
А если сразу?? Вроде почти почти....

Tishka17
16.07.2019
05:59:41
Сначалв пойми как у тебя там все переключается

МишанЯ
16.07.2019
06:03:06

Shieldy
16.07.2019
06:03:45
Добро пожаловать, @kayakaze!
Не забудь ознакомиться с правилами чата.
https://t.me/ru_python/802295

МишанЯ
16.07.2019
06:04:05
Переключаться при помощи await, но это только в верхней функции...

87776
16.07.2019
06:04:50
братишки а кто использует vs code для разработки? не могу понять, как заставить его выкидывать автодополнение для переменной log:
import logging
logging.basicConfig(filename="sample.log", level=logging.INFO)
log = logging.getLogger("ex")
log.
очень много кейcов когда автодополнение просто не показывает методы класса, мб есть какой-то плагин который решит эту проблему?

МишанЯ
16.07.2019
06:04:55
Лучше скажи, верно ли я обработку запускаю параллейно основному запросу?

Алексей
16.07.2019
06:05:10

87776
16.07.2019
06:05:39

Ildar
16.07.2019
06:06:42
Привет, вопрос по pandas - можно как-то в dataframe, полученном с read_excel, задать значение ячеек в зависимости от цвета? К примеру, если ячейка в excel зеленая, то значение у ячейки должно быть "эта ячейка зеленая ололол". В нете куча примеров как сделать обратную штуку, задать цвет, основанный на значении ячейки, через df.style.applymap, а вот обратно чет не получается найти ?

Tishka17
16.07.2019
06:06:52
А asyncio.wait случайно не блокируется до завершения корутины, которую ему передал?

Worlak
16.07.2019
06:09:15

Bogdan (SirEdvin)
16.07.2019
06:10:57
Wait это же корутина
А вообще вам нужно или просто создавать задачу и бросать ее в пул или взять aiojobs