Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2021 January 25

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
вот в случае с асинкио - поток спаунится один
а планировщик в потоке тред пул экзекутор чекает результат его
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
в питоне можно реализовать и многопоточность и асинкио
но в Go это уже вшито в язык
и не нужно об этом думать
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
std::slavik
в этом месте поток главный останавливается до тех пор пока не вернется результат
а само чтение происходит в потоке планировщика
тут скорей всего не совсем правильно сказал
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
поток экзекутора крутится постоянно
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
и выполняет код корутин
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
std::slavik
в этом месте поток главный останавливается до тех пор пока не вернется результат
а само чтение происходит в потоке планировщика
Так остановка главного потока не останавливает то что происходит в тредпуле
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Бензофуран Гетероцикл
Так остановка главного потока не останавливает то что происходит в тредпуле
ну так в тредпуле один поток
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
std::slavik
ну так в тредпуле один поток
Не всегда
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Как я понял там количество потоков меняется
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну пример приведи
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
желательно со скрином профилировщика
может я не прав и в питоне дела получше обстоят
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
import asyncio

async def t():
   await asyncio.sleep(5)

async def main():
   ensures = [asyncio.ensure_future(t()) for _ in range(10)]
   #breackpoint
   await asyncio.wait(ensures)

asyncio.run(main())
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Посмотри вот это в профайлере
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Емнип примерно здесь видно пулы которые запускаются
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Бензофуран Гетероцикл
Посмотри вот это в профайлере
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Окей, значит слип плох для эмуляции какого-то I/O
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

БГ

Бензофуран Гетероцик... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Телега пережала
источник

s

std::slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Бензофуран Гетероцикл
Телега пережала
99,9% времени проводится в функции run_forever
источник