Size: a a a

2019 April 10

YL

Yoshi Lyosha in Async Python
просто я до сих пор не понял почти ничего
источник

К

Костя in Async Python
пока не могу, может потом если не забуду)
источник
2019 April 11

NK

ID:803370278 in Async Python
Приветствую
источник

NK

ID:803370278 in Async Python
Как можно отделить метод, в котором идет получение данных с сервера и отправка данных на сервер, чтобы этот метод не блокировал программу? В какую сторону копать? Подробнее здесь https://stackoverflow.com/questions/55597450/how-to-make-this-function-non-blocking/55597809#55597809
источник

G

Gabben in Async Python
ID:803370278
Как можно отделить метод, в котором идет получение данных с сервера и отправка данных на сервер, чтобы этот метод не блокировал программу? В какую сторону копать? Подробнее здесь https://stackoverflow.com/questions/55597450/how-to-make-this-function-non-blocking/55597809#55597809
Странно, что ты не можешь сделать их асинхронными.
В таком случае используй loop.run_in_executor
источник

NK

ID:803370278 in Async Python
Gabben
Странно, что ты не можешь сделать их асинхронными.
В таком случае используй loop.run_in_executor
Спасибо
источник
2019 May 02

.

... in Async Python
привет всем ищу кодера/дизайнера/верстальщика для реализации проекта  зарплата сдельная подробнее пишите в лс вообщем вот сам проект http://cutt.us/TnuMf
источник
2019 May 03

NK

ID:803370278 in Async Python
В этой функции я закачиваю видео

def download_video(url, username):
   try:
       ydl = youtube_dl.YoutubeDL({'outtmpl': str(username)})
       print('Start downloading')
       with ydl:
           result = ydl.extract_info(
               url,
               download=True
           )
 Тут я ее вызываю
loop = asyncio.get_event_loop()
   await loop.run_in_executor(None, download_video, message.text, message.chat.id)
Проблема такая: когда качается 2 видео, то видео, для которого функция была вызвана первее, закачивается гораздо быстрее. Как я могу распределить скорость загрузки для всех видео?
источник

YL

Yoshi Lyosha in Async Python
ID:803370278
В этой функции я закачиваю видео

def download_video(url, username):
   try:
       ydl = youtube_dl.YoutubeDL({'outtmpl': str(username)})
       print('Start downloading')
       with ydl:
           result = ydl.extract_info(
               url,
               download=True
           )
 Тут я ее вызываю
loop = asyncio.get_event_loop()
   await loop.run_in_executor(None, download_video, message.text, message.chat.id)
Проблема такая: когда качается 2 видео, то видео, для которого функция была вызвана первее, закачивается гораздо быстрее. Как я могу распределить скорость загрузки для всех видео?
ну на самом деле зависит от того, что вообще делает эта функция, мб там цпу баунд операции, а не только ио

попробуй сделать пул процессов и вместо None первым атрибутом в run_in_executor прокидывай его
источник

YL

Yoshi Lyosha in Async Python
только не забудь потом этот пул закрыть в конце работы своего приложения
источник

NK

ID:803370278 in Async Python
Ок, спасибо
источник

YL

Yoshi Lyosha in Async Python
ID:803370278
Ок, спасибо
я про concurrent.futures.ProcessPoolExecutor
источник

YL

Yoshi Lyosha in Async Python
это так, на всякий)
источник

YL

Yoshi Lyosha in Async Python
напиши потом, помогло ли
источник

NK

ID:803370278 in Async Python
Yoshi Lyosha
напиши потом, помогло ли
По-моему,да, скорость не особо разниться
источник

YL

Yoshi Lyosha in Async Python
ID:803370278
По-моему,да, скорость не особо разниться
ещё раз, помогло или осталось как и раньше?)
источник

YL

Yoshi Lyosha in Async Python
скорость не разнится у первой и второй закачки?
источник

YL

Yoshi Lyosha in Async Python
или со старым вариантом она не разнится?)
источник

BG

Bogdan (SirEdvin) Gladyshev in Async Python
ID:803370278
В этой функции я закачиваю видео

def download_video(url, username):
   try:
       ydl = youtube_dl.YoutubeDL({'outtmpl': str(username)})
       print('Start downloading')
       with ydl:
           result = ydl.extract_info(
               url,
               download=True
           )
 Тут я ее вызываю
loop = asyncio.get_event_loop()
   await loop.run_in_executor(None, download_video, message.text, message.chat.id)
Проблема такая: когда качается 2 видео, то видео, для которого функция была вызвана первее, закачивается гораздо быстрее. Как я могу распределить скорость загрузки для всех видео?
У вас же функция не асинхронная, разве нет?
источник

YL

Yoshi Lyosha in Async Python
Bogdan (SirEdvin) Gladyshev
У вас же функция не асинхронная, разве нет?
так он потому и запускает её в экзекьюторе
источник